Habe die Version 0.4.4 der STM32-Version hochgeladen. Da war noch ein
kleiner Bug in der Helligkeitssteuerung drin, der durch eine Optimierung
des Fadings (fließender Übergang der Helligkeiten) hereingekommen ist.
Da ich die STM32-Version ja noch auf das kleinere STM32F4 Nucleo F401
Board portieren will, habe ich das zunächst mit CoIDE V1.7.7
ausprobiert. Der STM32F401RE wird da jedoch nicht unterstützt.
Daraufhin habe ich mir die auf coocox.org angebotene CoIDE V2Beta
heruntergeladen - in der Hoffnung, dass dort die CPU unterstützt
wird.... Fehlanzeige. Ausserdem ist die V2Beta derart kaputt, dass ich
noch nichtmals das bestehende Projekt für das STM32F4-Disco-Board
kompilieren konnte.
Aus lauter Frust habe ich mir EM:Blocks heruntergeladen...
Und siehe da: Installation easy, gcc schon dabei, Projekt anlegen geht
auch einfacher als mit CooCox, Sources reinkopiert und in der IDE
bekanntgemacht, compiliert... getestet... läuft! Neben "Debug" und
"Release" für das Disco-Board habe ich dann direkt weitere Targets für
das Nucleo-Board angelegt - in demselben Projekt! Coole Sache!
Mein Fazit:
EM:Blocks startet und arbeitet nicht nur schneller, sondern wirkt auch
wesentlich ausgereifter als CooCox und unterstützt so ziemlich jeden
STM32 - was man von CooCox gar nicht behaupten kann.
Abstürze/Endloshänger, die bei CooCox alle paar Stunden mal auftraten,
kommen bei EM:Blocks gar nicht vor.
Ich werde daher nun auf EM:Blocks umsteigen. Die nächste
wclock24-Version kommt daher als EM:Blocks-Projekt. Ausserdem werde ich
dann eine fertige HEX-Datei ablegen, die man mit dem ST-Link-Programm
dann direkt flashen kann - ohne, dass man erst eine IDE installieren
muss.
3 Fragen:
1. Die Uhr soll ja ein steuerbares Backlight erhalten. Ist das hard- und
softwaremäßig berücksichtigt?
2. Super Vorschlag von Charly, die Ansteuerung unterschiedlicher
LED-Hardware zu berücksichtigen. Wie ist die diesbezügliche
softwaremäßige Lösung geplant?
3. Wie ist generell die HW geplant? Individueller Aufbau, oder soll es
PCBs geben, und wenn ja, wie soll das Konzept aussehen? Netzteil
klarerweise extern, im Uhrengehäuse Zentrale Steuereinheit (Arduino oder
Atmega1284 oder sebstgestricktes STM32 Board + angedockte RTC +
angedocktes DLC77 und wahlweise Direktansteuerung von WS2812 Strips oder
alternativ Treiberplatinen für monochrome LEDs mit 74595 bzw. TLC5940?
Ist ein PCB für den Aufbau einer diskreten LED-Matrix geplant?
LG Herbert
Herbert P. schrieb:> 1. Die Uhr soll ja ein steuerbares Backlight erhalten. Ist das hard- und> softwaremäßig berücksichtigt?
Du meinst ein Ambilight, welches rückwärtig die Wand ansteuern soll?
Ja, ist für die STM32-Version geplant.
> 3. Wie ist generell die HW geplant?
Beim STM32:
* STM32F4 Nucleo Board
Das ist so klein und flach wie ein Arduino und hat sogar
zusätzlich zu den normalen 2-reihigen Steckerleisten auch
noch Arduino-Connectors. Das sollte mit den Maßen von 58x70mm
locker hinter der Frontplatte im unbeleuchteten Bereich passen.
* Eigene Lochraster-Platine draufgesteckt (wie ein Arduino-Shield)
mit folgenden Anschlussmöglichkeiten:
- Stecker für 5V Versorgung
- Stecker/Lötstifte für WS2812-Stripes (Anzeige Uhrzeit)
- Stecker/Lötstifte für WS2812-Stripes (Ambilight)
- Lötstifte für TSOP-IR-Empfänger
- Lötstifte für I2C-Modul mit RTC und EEPROM
- Lötstifte für LDR zur Helligkeitsmessung
- Lötstifte für DCF77-Modul
plus ein wenig Hühnerfutter (C+R für TSOP)
Wenn genügend Interessenten da sind für diese Platine, kann man auch
eine fertige PCB draus machen lassen. Sollten aber schon mehr als 3
Leute sein ;-)
> Netzteil klarerweise extern
Ja, ich habe hier ein günstiges 5V/5A-Netzteil (sieht aus wie ein
kleinees Notebook-Netzteil). Entweder klemmt man dies auch noch hinter
die Frontplatte der Uhr oder man führt nur die 5V hoch zur Uhr.
> Ist ein PCB für den Aufbau einer diskreten LED-Matrix geplant?
Meines Wissens nein.
@Frank:
die Bauhöhe der Elektronik sollte imho 2,5 cm nicht überschreiten. D.h.
Aufbau mit Shields wird zu hoch werden --> Verbindung daher eher mit
Flachbandkabeln.
@Charly & Joachim & Atmel-Crew: wie siehts mit ATM aus?
PCBs: wenn wir eine Fertigung der Acrylfrontplatte mit Siebdruck
anstreben, benötigen wir eine Mindestauflage vom 100 Stück. Da mach' ich
mir keine Sorgen, dass wir bei den PCBs nicht eine ausreichend große
Stückzahl erreichen könnten (sofern wir uns auf 2 - 3 Varianten einigen
können).
Herbert P. schrieb:> die Bauhöhe der Elektronik sollte imho 2,5 cm nicht überschreiten. D.h.> Aufbau mit Shields wird zu hoch werden --> Verbindung daher eher mit> Flachbandkabeln.
Nur wenn auf der Aufsteckplatine überhaupt was drauf ist. Ich wollte die
Bauteile so positionieren, dass sie zwischen dem Board und der Platine
stecken. Die Anschlüsse werden dann alle seitwärts rausgeführt sein.
Dann reichen 2,5 cm dicke.
Herbert P. schrieb:> 1. Die Uhr soll ja ein steuerbares Backlight erhalten. Ist das hard- und> softwaremäßig berücksichtigt?
ist doch nur ne Verlängerung der Kette, notfalls ginge auch 2ter Port um
die Laufzeit nicht zu sehr anwachsen zu lassen.
Herbert P. schrieb:> die Bauhöhe der Elektronik sollte imho 2,5 cm nicht überschreiten.
ja und, siehe Franks Antwort
Herbert P. schrieb:> @Charly & Joachim & Atmel-Crew: wie siehts mit ATM aus?
was ist ATM? Adobe Truetype Manager? Aus Tausch Maschine? Alles Träumt
Mega?
shice AKüFi.......
Frank M. schrieb:> Die Anschlüsse werden dann alle seitwärts rausgeführt sein.> Dann reichen 2,5 cm dicke.
eben, oder die Shield auf das MB löten wie RFM12 Module
@Joachim:
warum so brummig, schlechte Laune?
"ATM" war Autokorrekturfehler vom Smartphone, sorry, sollte Atmel
heißen.
Dass das Backlight- (oder Ambilight-) Feature keine technologische
Herausforderung darstellt, ist schon klar, aber davon war ja auch nicht
die Rede, sondern davon, dass es konzeptionell berücksichtig werden
muss, und wenn's nur darum geht, dafür extra Anschlüsse vorzusehen.
Nach meinem Verständnis arbeiten wir ja hier nicht an einem Projekt für
Individualisten, bei dem jeder seine eigene Suppe kocht, sondern an
einem Gemeinschaftsprojekt nach dem Baukastenprinzip, das auch für
andere Interessenten leicht nachvollziehbar und nachbaubar sein sollte.
Dazu gehört auch, dass man sich gemeinschaftliche Gedanken zum Aufbau
macht, oder siehst Du das anders?
Herbert P. schrieb:> @Joachim:> warum so brummig, schlechte Laune?
nun ja, kann man so sagen, mein Drucker ist seit 1/2 Jahr defekt und der
Netzwerkdrucker spinnt alle Nase lang, 1/2 km laufen um dann
festzustellen das nix im Korb liegt, kommt man zurück ist ne
Fehlermeldung auf dem Screen.
Verbindet man sich mit dem Drucker steht da wegen Fehler gelöscht, will
man neu drucken steht der Rechner und da kann man sowas zwischendurch
(Ratespiele) nicht gebrauchen.
Herbert P. schrieb:> "ATM" war Autokorrekturfehler vom Smartphone, sorry, sollte Atmel> heißen.
lesen vor dem Abschicken hilft ;-)
Herbert P. schrieb:> Dass das Backlight- (oder Ambilight-) Feature keine technologische> Herausforderung darstellt, ist schon klar, aber davon war ja auch nicht> die Rede, sondern davon, dass es konzeptionell berücksichtig werden> muss, und wenn's nur darum geht, dafür extra Anschlüsse vorzusehen.
es sind noch so viele Ports frei, Kette verlängern geht auch also das
ist grad nicht das aktuelle Problem, wenn die Ansteuerung steht und das
tut sie IMHO ist weiteres kein Problem, nur die Sparfüchse mit m328p
könnten hinten runterfallen.
Herbert P. schrieb:> Dazu gehört auch, dass man sich gemeinschaftliche Gedanken zum Aufbau> macht, oder siehst Du das anders?
nö sehe ich genauso, aber das Projekt läuft auch neben unserem anderen
Leben und da wäre es schön wenn wir nicht über ATM grübeln müssten ;-)
Ich bin alt und habe nicht mehr viel Zeit vor der Kiste oder sagen wir
so entweder bin ich lahm oder das Leben rennt schneller.
@Joachim:
naja, alt bin ich auch, und dass einen schön langsam das Leben überholt,
ist mir auch nicht fremd, aber vor der Kiste hab' ich keine Angst - ich
werde im Schornstein entsorgt.
Herbert P. schrieb:> Wie ist generell die HW geplant? Individueller Aufbau, oder soll es> PCBs geben, und wenn ja, wie soll das Konzept aussehen?
Meine Meinung: Dafür ist das Projekt noch nicht reif. Erstmal die
Pilotprojekte bzw. Testaufbauten und die SW soweit fertig machen, dann
ggf. Synergien und gemeinsame PCBs organisieren.
Herbert P. schrieb:> Ist ein PCB für den Aufbau einer diskreten LED-Matrix geplant?
also i hab ein Layout fertig f. 18 RGB (WS2812) oder wahlweise Mono
Leds mit 20mm Abstand und anschluesse zum einfachen aneinanderreihen
werde die Tage noch das Layout des weiter oben gezeigten Schaltplan
erstellen und dann werde ich 1 oder 2 Satz fertigen lassen
Als Netzteil dachte i an 12V - 16V da der Strom dann auf der
Zuleitung nicht allzugross ist.
Wenn noch jemand interesse hat kann er mir gerne schreiben
vlG
Charly
Charly B. schrieb:> Als Netzteil dachte i an 12V - 16V da der Strom dann auf der> Zuleitung nicht allzugross ist.
also entweder 12V oder 24V, dachte ich auch schon, an schnucklige weisse
SNT als Steckernetzteil und mit relativ dünner, optimal transparenter
Leitung aber die habe ich noch nicht gefunden oder zum aufhängen 2 dünne
versilberte Kupferstrippen wie bei Bilderschienen- Systeme weiss grad
nicht wie die heissen, wie man auch Halo Spots aufhängt aber um eben die
4-6A zu generieren brauchts heftige Stepdownwandler, meine KIS sollen 3A
schwächeln aber an 1,5-2A und viele der 3A Wandler schaffen nicht mal
dieses und manche Wandler sind in der Eingangsspannung auf 18V begrenzt,
nix mit 24V dabei sind 24V Steckernetzteile eher käuflich als 16V Typen.
Ich hab meine Halo-Spots auf horizontal gespannten, transparent
isolierten Seilen montiert (gibts als Zubehör für Halo-Strahler), die
würden sich eignen.
Herbert P. schrieb:> transparent> isolierten Seilen montiert (gibts als Zubehör für Halo-Strahler)
ich weiss, deswegen denke ich ja daran und das Zubehör die pieksenden
Schrauben verchromt gibts auch, ist halt ein Schmankerl mit 24V für
weniger Strom und Brückengleichrichtung Polarität beliebig, Stepdown zu
unseren 5V
wobei Halo gerne mit 12V kommt, gibt auch mehr Netzteile
Herbert P. schrieb:> Ich denk mir, 24V sind vielleicht doch ein wenig viel, 12V> müsstens doch> auch tun, oder?
klar, nur je höher die Spannung umso kleiner der Strom, umso weniger
Probleme an den Seilen und dünner
rechnen wir mal Matrix 16x16 =256 max Strom x 60mA 15A an 5V
auf 12V ohne Verluste 6A bei 24V nur 3A auf den Strippen
Ich hab mir vor einiger Zeit einmal ausgerechnet, wieviele LEDs bei der
Zeitanzeige maximal leuchten. Wenn ich mich richtig erinnere, bin ich
auf ca. 50 gekommen. Damit sähe die Rechnung schon etwas besser aus.
Müsste man halt Sorge tragen, dass das Netzteil bei Störung nicht
überlastet werden kann.
Habe eben noch ein paar DCF77-Module in der Schublade gefunden und eins
davon an das STM32F4-Disco-Board gehängt.
Dann ein wenig programmiert.... läuft, siehe Bild.
Ich werde noch ein paar Checks einbauen (Parity-Prüfungen, Läufe über 2
Minuten und Abgleich, ob die Zeiten wirklich nur eine Minute auseinander
liegen), dann lade ich evtl. morgen ein Update hoch.
Charly B. schrieb:> also i hab ein Layout fertig f. 18 RGB (WS2812) oder wahlweise Mono> Leds mit 20mm Abstand und anschluesse zum einfachen aneinanderreihen
20 mm Abstand ist suboptimal, das passt nicht zu den geplanten
Frontplatten.
Horizontaler Abstand muss sein: 16,67mm, vertikaler Abstand: 18,75mm.
Siehe auch: Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"
Frank M. schrieb:> Ich werde noch ein paar Checks einbauen (Parity-Prüfungen, Läufe über 2> Minuten und Abgleich, ob die Zeiten wirklich nur eine Minute auseinander> liegen), dann lade ich evtl. morgen ein Update hoch.
gibt es das nicht hier schon im Forum, Dannegger?
aber gut jeder will auch mal, habe ich auch mal selber am PC angefangen
noch am Joyport und man ist stolz seinen eigenen Code zu nutzen.
Das einsammeln kann ja in der IRMP ISR erfolgen oder nach Counter
hochzählen bis 10ms erreicht sind, alle 64µs muss ja nicht sein.
Joachim B. schrieb:> gibt es das nicht hier schon im Forum, Dannegger?
Wo bleibt denn da der Spaß? ;-)
Nein, im Ernst:
Ich arbeite erst seit wenigen Wochen mit STM32-µCs und habe noch viel zu
lernen. Das geht nur, wenn ich den Code selbst schreibe und auch
verstehe. Ausserdem kann ich ja schlecht irgendeinen Code nehmen und
diesen dann unter die GPL-Lizenz stellen. Das wäre klauen... und da bin
ich prinzipiell dagegen.
Ich weiß, andere klauben einfach fremden Code zusammen und bauen sich
dann ihr "eigenes" Projekt daraus.
Das hat mehrere Nachteile:
- Man versteht einen Großteil des Projekts selbst nicht mehr
- Bei Problemen braucht man länger für eine Lösung
- Man läuft Gefahr, gegen etwaige Lizenzen zu verstoßen
- Man hat nicht die freie Wahl, eine eigene Lizenzform zu wählen
Ich bleibe diesen Prinzipien grundsätzlich treu. Sonst hätte ich in der
Vergangenheit keine solche Open-Source-Projekte wie fli4l oder eisfair
aus dem Boden stampfen können, an dem dann später mehrere Dutzend
Entwickler mitgearbeitet haben ... und heute noch tun, obwohl ich selbst
da mittlerweile aus Zeitgründen nicht mehr aktiv bin.
> Das einsammeln kann ja in der IRMP ISR erfolgen oder nach Counter> hochzählen bis 10ms erreicht sind, alle 64µs muss ja nicht sein.
So ähnlich mache ich es, ich zähle in der Timer-ISR einen Zähler hoch.
Wenn 10msec vergangen sind, setze ich dann dcf77_flag, was in der
main-Funktion dann zum Aufruf der dcf77_ticker-Funktion führt.
1
void
2
TIM2_IRQHandler(void)// Timer2 Interrupt Handler
3
{
4
staticuint16_tfade_cnt;
5
staticuint16_tdcf77_cnt;
6
7
TIM_ClearITPendingBit(TIM2,TIM_IT_Update);
8
(void)irmp_ISR();// call irmp ISR
9
timeout_cnt++;
10
11
fade_cnt++;
12
13
if(fade_cnt==F_INTERRUPTS/20)// set fade_flag every 1/20 of a second
14
{
15
fade_flag=1;
16
fade_cnt=0;
17
}
18
19
dcf77_cnt++;
20
21
if(dcf77_cnt==F_INTERRUPTS/100)// set dcf77_flag every 1/100 of a second
Frank M. schrieb:> Ich weiß, andere klauben einfach fremden Code zusammen und bauen sich> dann ihr "eigenes" Projekt daraus.>> Das hat mehrere Nachteile:>> - Man versteht einen Großteil des Projekts selbst nicht mehr
nun ja wozu soll ich noch versuchen die bullet proof entprell Routine zu
verstehen und warum soll ich sie nicht nutzen?
Die WS2811/12/b Routine verstehe ich aber, reines Bitschubsen im Timing,
muss ich auch nicht selber bauen
Joachim B. schrieb:> nun ja wozu soll ich noch versuchen die bullet proof entprell Routine zu> verstehen und warum soll ich sie nicht nutzen?
Weil Du dann PeDa eigentlich fragen müsstest, ob Du Deinen Source unter
die Lizenz X stellen darfst - jedenfalls dann, wenn Du Dein Projekt
einer größeren Masse anbieten willst. Oder baust Du Dir Deine
ATmega1284-Variante nur für Dich selbst?
Ich finde es besser, wenn man die PeDa-Entprell-Routine versteht und
dann selbst implementiert. Wenn sie dann genauso gut funktioniert, hat
man alles richtig gemacht.
Das ist unser beider Unterschied: Du kopierst Code, ich lerne von
anderen und entwickle daraus eigene Konzepte. Ersteres würde mich auf
Dauer nicht befriedigen. Außerdem hätte ich dann niemals IRMP
entwickelt, sondern irgendeinen alten RC5-Code kopiert und wäre bei dem
Stand von vor 20 Jahren stehengeblieben.
Frank M. schrieb:> Charly B. schrieb:>> also i hab ein Layout fertig f. 18 RGB (WS2812) oder wahlweise Mono>> Leds mit 20mm Abstand und anschluesse zum einfachen aneinanderreihen>> 20 mm Abstand ist suboptimal, das passt nicht zu den geplanten> Frontplatten.>> Horizontaler Abstand muss sein: 16,67mm, vertikaler Abstand: 18,75mm.>> Siehe auch: Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"
Danke Frank f. den Hinweiss, wer 16.67 moechte kann ja die fertigen
Srips nehmen, ist denke i guenstiger, i wollte eine etwas groessere
Uhr daher die 20mm, mit 16.67mm kommt man auf 300mm gesamt, ist mir
a bissel klein, ich will speter event. sogar auf 25mm oder 30mm
Abstand da die Uhr ja ein 'schmuckstueck' ist/wird und nicht zu
uebersehen sein soll ;)
vlG
Charly
Frank M. schrieb:> Das ist unser beider Unterschied: Du kopierst Code, ich lerne von> anderen und entwickle daraus eigene Konzepte. Ersteres würde mich auf> Dauer nicht befriedigen.
och ich lerne schon, habe die Entprellroutine auch zum Arduino gebracht,
die DCF selber nur nach dem Schema selbst programmiert, den WS Code
studiert und erkannt das ich so ähnlich einen DAC ansteuere.
Nur schau ich wo ich es nutzen kann oder wo mich das tiefere Verständnis
interessiert und entscheide dann wie tief ich in die Routinen einsteigen
will.
Frank M. schrieb:> wenn Du Dein Projekt> einer größeren Masse anbieten willst.
will ich ja nicht, ich baue für mich selbst.
PS. wenn ich bedenke wieviel Zeit du in IRMP gesteckt hast und du bist
besser in SW als ich, dann wäre es für mich ein Wahnsinn das
nachzuempfinden und ich käme nie mehr voran mit den Dingen die ich
machen möchte, ich denke das verstehst du.
@Charly
Der 16 x 16 Entwurf hat ein RM von 20 x 20 mm, Außenabmessungen der
Matrix 32 x 32 cm, der Frontplatte 45 x 45 cm (gleich wie die Original
Qlock Two). Für diese Variante hätte ich eine WS2812 RGB-LED-MAtrix auf
Kunststoffträgerfolie (2 Stk. 8 x 16 Matrix) abzugegben.
Es ist halt so, dass für die preislich einigermaßen attraktive Fertigung
der Frontplatte und der MDF-Montageplatte mittels professioneller
Techniken Stückzahlen erforderlich sind, die man als Einzelkämpfer kaum
erreichen kann. Allein für die Fertigung der Acrylglas-Frontplatte
mittels Siebdruck ist eine Mindestauflage von 100 Stück erforderlich.
Und das Bohren bzw. Fräsen von 288 + 9 Löchern in die MDF-Mointageplatte
stelle ich mir auch nicht gerade als Tätigkeit vor, der ich mit
Leidenschaft frönen würde.
Solltest Du Dich doch entschließen können, auf das RM 16,67 x 18,75 mm
umzusteigen, hätte ich Bedarf an mehreren Platinen für diskrete
monochrome 5mm LEDS, allerdings vorzugsweise mit TLC5940 statt 74595.
Charly B. schrieb:> Danke Frank f. den Hinweiss, wer 16.67 moechte kann ja die fertigen> Srips nehmen, ist denke i guenstiger, i wollte eine etwas groessere> Uhr daher die 20mm, mit 16.67mm kommt man auf 300mm gesamt, ist mir> a bissel klein, ich will speter event. sogar auf 25mm oder 30mm> Abstand da die Uhr ja ein 'schmuckstueck' ist/wird und nicht zu> uebersehen sein soll ;)
Deine Rechnung stimmt so nicht ganz: Die Frontplatte hat ja noch einen
Rand. Der beleuchtete Bereich ist wirklich 300mm x 300mm groß, das
stimmt. Aber die gesamte Frontplatte ist 450mm x 450mm, hat also mehr
als die doppelte Fläche.
Bilder, wo genau diese Maße (jedoch für 11x10) eingesetzt werden:
Word Clock
Auf der Seite "WordClock24h" (leider schaffe ich es mit dem iPad nicht,
Links einzufügen) sind auch Ansichten der Frontplatte mit 18 x 16 Matrix
in verschiedenen Ausführungen zu sehen.
Herbert P. schrieb:> leider schaffe ich es mit dem iPad nicht,> Links einzufügen
Das geht bei Artikel-Links ganz einfach: Du musst den Namen nur in
doppelte eckige Klammern einschließen, also schreiben:
Frank M. schrieb:> Herbert P. schrieb:>> leider schaffe ich es mit dem iPad nicht,>> Links einzufügen>> Das geht bei Artikel-Links ganz einfach: Du musst den Namen nur in> doppelte eckige Klammern einschließen, also schreiben:WordClock24h>> ergibt: WordClock24h :-)
Oki, klar thx :-)
Mich macht das iPad halb wahnsinnig (obwohl ich eh eine Tastatur dazu
habe), aber On the Road hab ich nix anderes :-) Werde wohl nie ein Apple
Freak werden...
Joachim B. schrieb:> PS. wenn ich bedenke wieviel Zeit du in IRMP gesteckt hast und du bist> besser in SW als ich, dann wäre es für mich ein Wahnsinn das> nachzuempfinden und ich käme nie mehr voran mit den Dingen die ich> machen möchte, ich denke das verstehst du.
Es wäre auch Quatsch, IRMP komplett zu verstehen. Du vergleichst
hier Äpfel mit Birnen. Der DCF-Client ist dagegen nur Peanuts.
Für den DCF77-Decoder habe ich gestern abend weniger als eine Stunde
gebraucht:
- 10 Minuten Recherche, wie das Zeitsignal aufgebaut ist
- 30 Minuten Code from Scratch schreiben
- 15 Minuten Tests und Fehlerkorrekturen
(Ich muss dazu aber sagen, dass ich die Thematik schon kannte. Vor ca.
20 Jahren hatte ich schon mal einen DCF-Decoder unter Unix geschrieben.
Dafür hatte ich damals einfach einen UART bei 50Bd gepollt.)
Um irgendeinen bestehenden fremden DCF77-Decoder von ATmega auf STM32 zu
portieren, hätte ich wahrscheinlich viel mehr Zeit und Arbeit
reinstecken müssen, als das Ding einfach selbst zu schreiben.
Frank M. schrieb:> Um irgendeinen bestehenden fremden DCF77-Decoder von ATmega auf STM32 zu> portieren, hätte ich wahrscheinlich viel mehr Zeit und Arbeit> reinstecken müssen, als das Ding einfach selbst zu schreiben.
stimmt, geht mir auch oft so!
Frank M. schrieb:> Um irgendeinen bestehenden fremden DCF77-Decoder von ATmega auf STM32 zu> portieren, hätte ich wahrscheinlich viel mehr Zeit und Arbeit> reinstecken müssen, als das Ding einfach selbst zu schreiben.
stimmt, geht mir auch oft so!
und DCF77 habe ich am PC selber dekodiert in C lange vor meinen Anfängen
mit AVR
@Herbert
mit dem TLC5940 haste nur 16 bit (LEDs) oder du machst die
Strips vertikal und 18st dann horizontal, iss halt softwaresache
wenn du das moechtest kann man sich ueber ein layout unterhalten
@Frank
ich wills mal so sagen: wenn i ein 17zoll Monitor mit ein paar cm
Rand versehe wird er auch nicht zum 24zoell'er ;)
ich moechte nicht allzuviel Rand dafuer lieber groessere Schrift,
meine Platine ist ca. 372mm x 13mm und die Frontplatte stell i
mir ca. 430x430mm vor, halt mit grossen Buchstaben (spaeter event.
sogar 600x600mm)
mit meiner Fraesse kann ich ca 450x260mm bearbeiten so das ein
erster versuch mit einer 2teiligen Front moeglich waehre
meine 'end-idee' ist eine matte Frontplatte mit von hinten
aufgelebter Folie bedruckt mit den Buchstaben (negativdruck,
Folie Schwarz/Buchstaben transparent )
vlG
Charly
Joachim B. schrieb:> klar, nur je höher die Spannung umso kleiner der Strom, umso weniger> Probleme an den Seilen und dünner
So sehe ich das auch.
Bis zu 1,3A kann man "mini-360 buck" nach meiner Erfahrung ohne
Kühlkörper betreiben.
Bei 18 W2812b-Strips kann man ja z.B. auch für jeden Strip einen
separaten "mini-360 buck" nehmen.
Charly B. schrieb:> @Herbert> mit dem TLC5940 haste nur 16 bit (LEDs) oder du machst die> Strips vertikal und 18st dann horizontal, iss halt softwaresache> wenn du das moechtest kann man sich ueber ein layout unterhalten
Für die Monochrom-Variante nehm ich 5mm LEDs, und die TLC5940 schließ
ich per Daisy Chain aneinander, so dass die Ansteuerung von der Logik
her derjenigen der WS2812 Strips entspricht.
Torsten C. schrieb:> Joachim B. schrieb:>> klar, nur je höher die Spannung umso kleiner der Strom, umso weniger>> Probleme an den Seilen und dünner>> So sehe ich das auch.
und bei höherer Spannung 24V verringern sich die Verluste am Schottky
Brückengleichrichter für die Verpolsicherheit (ich bau den auf jeden
Fall ein vor den Wandlern)
Torsten C. schrieb:> Joachim B. schrieb:>> klar, nur je höher die Spannung umso kleiner der Strom, umso weniger>> Probleme an den Seilen und dünner>> So sehe ich das auch.>> Bis zu 1,3A kann man "mini-360 buck" nach meiner Erfahrung ohne> Kühlkörper betreiben.>> Bei 18 W2812b-Strips kann man ja z.B. auch für jeden Strip einen> separaten "mini-360 buck" nehmen.
Die im Handel erhältlichen LED-Seile sind auf jeden Fall für einige
Ampere ausgelegt. Und die Lösung mit je einem separaten mini-360 buck
wäre imho auf jeden Fall einem zentralen "Kraftwerk" vorzuziehen.
Herbert P. schrieb:> … die Lösung mit je einem separaten mini-360 buck> wäre imho auf jeden Fall einem zentralen "Kraftwerk" vorzuziehen.
Bei 18 Stück lohnt sich vielleicht ein Blick auf den Preis:
50 Stück á 45 cent:
http://www.aliexpress.com/item/-/2028057753.html
10 Stück á 50 cent:
http://www.aliexpress.com/item/-/32253010196.html
… allerdings etwas voluminöser als die "mini-360".
Ich würde die 3,3V für den STM32 dann aus ca. 4,6V erzeugen. Die
Versorgung erfolgt dann über ein paar Schottky-Dioden von den Strips
aus.
Torsten C. schrieb:> Ich würde die 3,3V für den STM32 dann aus ca. 4,6V erzeugen. Die> Versorgung erfolgt dann über ein paar Schottky-Dioden von den Strips> aus.
Sowohl das Disco-Board als auch das Nucleo-Board kann mit 5V versorgt
werden. Das Board kommt also mit ans 5V-Netzteil, welches auch die
Stripes versorgt. Von daher braucht die STM32-Variante keine
3,3V-Versorgung. Da die meisten STM32-Eingänge sowieso 5V verkraften und
auf beiden Boards ein eigener 3,3V-Ausgang existiert, habe ich bisher
- den TSOP für den IR-Empfang mit 5V vom Board
- das DCF77-Modul mit seinen paar µA an 3,3V vom Board
- die LED-Stripes direkt ans 5V-Netzteil
angeschlossen.
Die vorgesehenen I2C-Komponenten EEPROM + RTC kommen auch an die 3,3V
des Boards. Damit brauchen wir für die STM32-Variante nur ein
5V-Netzteil.
Ich setze momentan dieses ein:
http://www.pollin.de/shop/dt/NjQ1ODQ2OTk-/Stromversorgung/Netzgeraete/Festspannungs_Netzgeraete/Schaltnetzteil_FSP020_DGAA1_5_V_4_A.html
Das Ding kostet schlappe 7 EUR und liefert 4A. Das sollte reichen.
Das einzige, was eine extra 3,3V-Versorgung benötigt, ist ein ESP8266
für den WLAN-Anschluss, weil dieses Ding auch mal 200mA zieht. Dafür
kann man auch so etwas nehmen:
https://secure.reichelt.de/Wandler-Module-DC-DC/TSR-1-2433/3//index.html?ACTION=3&ARTICLE=116849
wenn man keine 3-4 Wochen auf die China-Lieferung warten will ;-)
Frank M. schrieb:> Das Ding kostet schlappe 7 EUR und liefert 4A. Das sollte reichen.
Was mich daran stört: Die Kabellänge ist begrenzt oder die Kabel müssen
dick sein, damit bei 4A auch noch 5V bei der Uhr ankommen.
Ich versorge die Uhr (wie oben beschrieben) daher mit 9..24V.
Torsten C. schrieb:> aus ca. 4,6V erzeugen … über ein paar Schottky-Dioden von den Strips
Nee, ist doch doof!
Ich nehme ein "TK0260 Module", davon habe ich auch noch 10 Stück in der
Bastelkiste, da kommen dann auch gleich die 200mA für den ESP8266 raus.
Á propos:
http://www.esp8266.com/wiki/doku.php
Mal schauen, wann da Seiten angelegt werden.
Torsten C. schrieb:> Was mich daran stört: Die Kabellänge ist begrenzt oder die Kabel müssen> dick sein, damit bei 4A auch noch 5V bei der Uhr ankommen.
Ja, das Kabel auf der 5V-Seite ist relativ dick und dürfte so ca. 1,5m
lang sein, müsste ich aber mal nachmessen. Das Gehäuse ist aber auch nur
3,2cm hoch und ich überlege, ob ich das nicht einfach noch hinter der
Frontplatte unterbringe. Weiß ich noch nicht.
> Ich versorge die Uhr (wie oben beschrieben) daher mit 9..24V.
Ja, ist auch eine Alternative. Bin mir noch unschlüssig.
> Wenn 4,6V ^^ nicht reichen, nehme ich ein "TK0260 Module", davon habe> ich auch noch 10 Stück in der Bastelkiste, da kommen dann auch gleich> die 200mA für den ESP8266 raus.
Kann sein, dass es bei 4,6V mit den WS2812 zu Farbverschiebungen kommt.
Das wurde jedenfalls schon öfter berichtet - auch in diesem Forum.
> http://www.esp8266.com/wiki/doku.php>> Mal schauen, wann da Seiten angelegt werden.
Ich habe 5 von den ESP8266-01 Modulen seit ca. 6 Wochen zuhause liegen.
Doku für die Dinger gibt es auch ausreichend. Einen kleinen
(S)NTP-Client habe ich mir schon unter Linux zusammengestrickt und
erfolgreich getestet, um zu verstehen, wie das funktioniert. Ist
eigentlich sehr einfach. 48 Bytes an NTP-Server per UDP schicken, 48
Byte empfangen, diese in Unix-Sekunden umrechnen und anschließen per
ctime() in eine tm-Struct umwandeln - fertig.
Mal schauen, vielleicht binde ich das ESP8266-01 mal heute abend oder
morgen an den STM32 an. Mit dem DCF77-Decoder von Reichelt bin ich nicht
sooo zufrieden. Man braucht nur mit der Wimper zu zucken und schon hat
das Ding jede Menge Störungen. Da muss man schon lange die Luft
anhalten, damit der Decoder mal 2 Minuten hintereinander störungsfrei
läuft.
Frank M. schrieb:> Kann sein, dass es bei 4,6V mit den WS2812 zu Farbverschiebungen kommt.
Das wäre anders gemeint gewesen: Wenn jeder der 18 Strips einen eigenen
Buck hat, dann wären das schon 5.0V an den WS2812.
Mir ging es um die 5V z.B. für die Pegelwandler an die Strips.
Entweder man zapft genau einen Strip an, oder man nimmt mehrere und
entkoppelt per Schottky-Diode, damit immer der mit der höchsten Spannung
angezapft wird, oder man ersetzt ein "mini-360" durch ein "TK0260".
Letzteres gefällt mir am besten.
Frank M. schrieb:> Das Gehäuse ist aber auch nur> 3,2cm hoch und ich überlege, ob ich das nicht einfach noch hinter der> Frontplatte unterbringe.
Das 230V-Kabel hat zwar keinen großen Kupfer-Querschnitt, ist mir aber
wegen der VDE-Vorschriften wieder zu dick.
Frank M. schrieb:> Ich habe 5 von den ESP8266-01 Modulen seit ca. 6 Wochen zuhause liegen.> Doku für die Dinger gibt es auch ausreichend.
habe auch schon 5 rumliegen, auch seit Wochen
Frank M. schrieb:> Einen kleinen> (S)NTP-Client habe ich mir schon unter Linux zusammengestrickt und> erfolgreich getestet,
interessant, das fehlt mir noch
Frank M. schrieb:> Byte empfangen, diese in Unix-Sekunden umrechnen und anschließen per> ctime() in eine tm-Struct umwandeln - fertig.
im Pollin NETIO habe ich das auch schon geschafft aus den langen 64 bit
time die Zeit & Datum rauszuholen, + aus der CT Zeitberechnung für die
verschieblichen Feiertage oder ähnlich diesem MEZ oder MESZ Istzustand
und Umstellung zukünftig zu ermitteln
soviel zum verstehen und selber machen ;-)
Frank M. schrieb:> Ja, das Kabel auf der 5V-Seite ist relativ dick und dürfte so ca. 1,5m> lang sein, müsste ich aber mal nachmessen. Das Gehäuse ist aber auch nur> 3,2cm hoch und ich überlege, ob ich das nicht einfach noch hinter der> Frontplatte unterbringe. Weiß ich noch nicht.
Soweit ich mich erinnern kann, ist bei der Original QlockTwo an der
Decke ein kleines Kästchen mit dem Netzteil befestigt, daran ist die Uhr
mit 2 Stromzuführungsseilen aufgehängt. Dei Seile dürften ca. einen
Querschnitt von ca. 1,5^2 haben.
@Frank
DCF77 Modul werde i bei Pollin bestellen, die haben bei mir in
einem anderen Projekt recht gut funktioniert und kostet nur
~1/3 wie bei Reich elt, ein Sync must du nachts machen da
dann die LW 'besser geht' und die Stoerungen weniger sind.
vlG
Charly
Torsten C. schrieb:> Mir ging es um die 5V z.B. für die Pegelwandler an die Strips.
Du meinst für die Datenleitung DIN? Meine Stripes kommen problemlos mit
dem 3,3V Pegel vom STM32 zurecht, obwohl sie selbst mit exakt 5V laufen.
DIN der ersten LED habe ich direkt an das Disco-Board angeschlossen.
Siehe auch Foto:
http://www.mikrocontroller.net/articles/WordClock24h#Hardware> Entweder man zapft genau einen Strip an, oder man nimmt mehrere und> entkoppelt per Schottky-Diode, damit immer der mit der höchsten Spannung> angezapft wird, oder man ersetzt ein "mini-360" durch ein "TK0260".
Verstehe leider nicht, was Du meinst. Geht es Dir um den Spannungsabfall
der 18 Stripes à 30 cm mit einer Gesamtlänge von 4,80 Metern? Und Du
willst mehrere Spannungsquellen nutzen? Dann muss man da doch nichts
entkoppeln. Alle Massen zusammen und die positive Spanung nur an die
Gruppe der Stripes, die auch von dieser Quelle gespeist werden sollen.
Wo ist denn das Problem?
Ich werde die 5V alle 2 Stripes einspeisen, in jeder ungeraden Zeile
links und zwar alle mit demselben Netzteil.
5V ----------------------------------------+
DIN ---------------------------------+ DOUT |
GND ------------------------------+ | |
| | |
| | |
-----------------------------+ | |
DOUT +----------------------------------+ DIN |
| ---------------------------------------+
|
|
5V | ---------------------------------------++
DIN +-----------------------------------+ DOUT |
GND ------------------------------- | |
...
usw. Es wird am Ende jedes 2. Stripes nur DOUT mit DIN verbunden. Alle 2
Stripes kommt dann über ein sehr kurzes Kabel wieder +5V und GND dran.
Das heisst, die Maximallänge, über die auf den Stripes die Spannung
wegen dünner Leitungen abfallen kann, beträgt 60 cm.
Frank M. schrieb:> Wo ist denn das Problem?
Es gibt kein Problem mehr. Wenn ich 18 "mini-360 buck" genommen hätte,
hätte ich 18 x 5V gehabt und mich ohne Dioden für einen von den 18 Bucks
entscheiden müssen, den ich für den µC anzapfe.
Nun sind's halt 17 x "mini-360 buck" und 1 x "TK0260 Module"
http://www.aliexpress.com/item/10pcs-TK0260-module/618933686.html
PS: Ein Netzteil an der Decke ist eine Geschmacksfrage.
Torsten C. schrieb:> Nun sind's halt 17 x "mini-360 buck" und 1 x "TK0260 Module"
Es sind doch nur 16 Zeilen und nicht 18. Oder habe ich mich verrechnet?
;-)
Frank M. schrieb:> Es sind doch nur 16 Zeilen und nicht 18. Oder habe ich mich verrechnet?
Es sind 18 Spalten und die Strips hängen senkrecht. Oder nicht?
Torsten C. schrieb:> Es sind 18 Spalten und die Strips hängen senkrecht. Oder nicht?
Nein, die hängen waagerecht. 60 LEDs pro Meter sind genau die
gewünschten 1,67cm waagerechter Buchstabenabstand. In der Höhe haben
wir einen Abstand von je 1,875cm. Da passen keine Stripes "vom Markt".
Wie würdest Du denn dieses Bild:
1 2 3 4 ... 18
O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---
|
36 20 19 |
O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---
|
|
O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--
37 38 ....
denn sonst interpretieren? Das ging hier schon mehrmals durch den Thread
und ist auch im Artikel drin.
P.S.
18 x 16,67 mm = 300 mm Breite
16 x 18,75 mm = 300 mm Höhe
Insgesamt bekommen wir damit ein schönes Quadrat. Mit dem Rand von je
75mm hat die Frontplatte dann exakt 450mm x 450mm.
Torsten C. schrieb:> PS: Ein Netzteil an der Decke ist eine Geschmacksfrage.
Bei der QlockTwo ist das in einem länglichen, weißen Kästchen
untergebracht, das meines Erachtens überhaupt nicht stört. Bei einer
normalen Deckenlampe werden ja auch die Aufhängung und die
Kabelanschlüsse durch eine becherförmige Kappe an der Decke abgedeckt.
Frank M. schrieb:> 18 x 16,67 mm = 300 mm Breite> 16 x 18,75 mm = 300 mm Höhe
Du hast ja so Recht! Sorry + Danke. War ja mein eigener Vorschlag:
Ich schrieb im Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"> Für waagerecht sind die 16,7mm aber vielleicht OK.
Ich hatte es nur falsch rum im Kopf!
Frank M. schrieb im Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"> Sorry, … ich war da noch auf dem alten Trip.
"Auf dem falschen Trip sein", kann halt jedem mal passieren, mir auch.
;-) Tut mir Leid. Man gut, dass ich die Strips noch nicht zurecht
geschnitten habe.
Also :
Nun sind's 15 x "mini-360 buck" und 1 x "TK0260 Module"!!!
Torsten C. schrieb:> Nun sind's 15 x "mini-360 buck" und 1 x "TK0260 Module"!!!
Gibts dazu einen Tipp, wo man das am besten bestellen sollte? Oder hat
wer was übrig bzw. ist eine Sammelbestellung sinnvoll?
Charly B. schrieb:> @Frank> DCF77 Modul werde i bei Pollin bestellen, die haben bei mir in> einem anderen Projekt recht gut funktioniert und kostet nur> ~1/3 wie bei Reich elt, ein Sync must du nachts machen da> dann die LW 'besser geht' und die Stoerungen weniger sind.
ich habe 5 Pollinteile bestellt, bis jetzt keine Sync. aber nicht die
Nerven um bis nachts zu warten bis die laufen, hier wurde auch vor
gewarnt soll einen Thread geben das die allgemein mies laufen, habe
jetzt ELV bestückt aber noch nicht angeschlossen.
Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"
oben links im Bild
Herbert P. schrieb:> Gibts dazu einen Tipp, wo man das am besten bestellen sollte?
* Die größeren für 45 cent: Link siehe oben.
* Die kleinen: ebay 400760853170
* TK0260: Link siehe auch oben.
> bzw. ist eine Sammelbestellung sinnvoll?
Nicht, wenn man damit über 26€ kommt. Es lohnt sich also i.d.R. nicht.
> Oder hat wer was übrig
Ich denke, selbst bestellen macht am meisten Sinn. Aber wer keine 4 - 6
Wochen warten will und nur mal Einzelstücke braucht, dem kann ich
helfen.
Torsten C. schrieb:> Die kleinen: ebay 400760853170
Mir würden die kleinen schnuckeligen gefallen, hat die schon mal jemand
getestet? Oder darf man davon ausgehen, dass sie funktionieren?
Herbert P. schrieb:> hat die schon mal jemand> getestet? Oder darf man davon ausgehen, dass sie funktionieren?
Ja + Ja:
Torsten C. schrieb:> … "mini-360 buck" nach meiner Erfahrung …
Wenn Du noch etwas wartest, teste ich vorher nochmal das
Einschwingverhalten beim Einschalten.
Auf die kleinen kann man scheinbar Festwiderstände löten, wenn man sich
nicht aufs Poti verlassen will.
Joachim B. schrieb:> ich habe 5 Pollinteile bestellt, bis jetzt keine Sync. aber nicht die> Nerven um bis nachts zu warten bis die laufen..........
ich hatte damals meine CPU durchlaufen lassen und jede korekt
decodierte zeit/datum auf die SD geschrieben, alternativ ins
EEprom, dann kannste nachts bubu machen und am naechsten Tag
nachsehen, das so als Geheimtip, aber keinem weitersagen ;)
vlG
Charly
Torsten C. schrieb:> Wenn Du noch etwas wartest, teste ich vorher nochmal das> Einschwingverhalten beim Einschalten.
Soviel Zeit hab' ich gerade noch ;-)
Charly B. schrieb:> ich hatte damals meine CPU durchlaufen lassen und jede korekt> decodierte zeit/datum auf die SD geschrieben, alternativ ins> EEprom, dann kannste nachts bubu machen und am naechsten Tag> nachsehen, das so als Geheimtip, aber keinem weitersagen ;)
bäh, ich schaue den DCF Bits gerne beim einlaufen zu und das ging mit
den Pollinteilen nicht, aber egal, jeder wie er mag.
Herbert P. schrieb:> Hab grade bei chip_partner für € 2,50 ein schnuckeliges RTC-Modul> entdeckt:>> Ebay-Artikel Nr. 121474408359
netter Preis, aber in China mit EEPROM und LiR2032 (Akku) 1,50€ aber
auch hier, jeder wie er mag.
Torsten C. schrieb:> Torsten C. schrieb:>> … "mini-360 buck" nach meiner Erfahrung …
alle genannten mini buck können keine 24V ab, aber die kleinen
wenigstens 23V somit würde das passen mit normaler Si Brücke minus
1,5-2V 24V in <23V zum buck
Joachim B. schrieb:> alle genannten mini buck können keine 24V ab, aber die kleinen> wenigstens 23V somit würde das passen mit normaler Si Brücke minus> 1,5-2V 24V in <23V zum buck
Wieso so hoch reinfahren? Ich denke, 12V würdens doch auch tun, oder? Es
leuchten ja niemals alle LEDs gleichzeitig - außer bei einem Defekt.
Herbert P. schrieb:> Wieso so hoch reinfahren?
haben wir doch vorher grad diskutiert.........
Torsten C. schrieb:> Joachim B. schrieb:>> klar, nur je höher die Spannung umso kleiner der Strom, umso weniger>> Probleme an den Seilen und dünner>> So sehe ich das auch.Joachim B. schrieb:> und bei höherer Spannung 24V verringern sich die Verluste am Schottky> Brückengleichrichter für die Verpolsicherheit
Charly B. schrieb:> wie? so schnell kannst du gucken ?? ;)
1 Bit/s schaffe ich grad noch so :-)))
vor allem auf dem PC screen wenn es langsam von rechts nach links
einläuft ...
grad läuft,
was ist das?
ein blaues Licht.
was macht es?
es leuchtet blau.
:-)))
Joachim B. schrieb:> Herbert P. schrieb:> Wieso so hoch reinfahren?>> haben wir doch vorher grad diskutiert.........>
Schon klar, aber ich sehe den Strombedarf nicht sehr hoch: im
Normalbetrieb nicht einmal 1,5A an 12 V. Man braucht ja nicht mit
Kanonen auf Spatzen schiessen. Oder sitze ich einem Trugschluss auf?
Die Seile muessen wegen der mechanischen Stabilitaet ohnehin einen
gewissen Mindestdurchmesser haben.
Weil ich schon ein paar Mails bekommen habe zwecks dem Plotten der Maske
auf Folie.
Hab nen Plotter mit max 1,30m Breite. Könnte also falls noch jemand
Interesse hat die Vorlage auf schwarzer oder andersfarbiger Folie
ausplotten und mit Transferfolie verschicken :)
Torsten C. schrieb:> das Einschwingverhalten beim Einschalten.
Siehe Bilder
Joachim B. schrieb:> alle genannten mini buck können keine 24V ab
Welche meinst Du? Die, die ich meine, können alle 25V ab.
Die Oszillogramme sind bei 24.1V Eingangsspannung entstanden.
Torsten C. schrieb:> Welche meinst Du? Die, die ich meine, können alle 25V ab.
dann zeige noch mal Links, ich bin deinen hier gefolgt
einmal 23V einmal 12V
B. R. schrieb:> Weil ich schon ein paar Mails bekommen habe zwecks dem Plotten der Maske> auf Folie.>> Hab nen Plotter mit max 1,30m Breite. Könnte also falls noch jemand> Interesse hat die Vorlage auf schwarzer oder andersfarbiger Folie> ausplotten und mit Transferfolie verschicken :)
Was wuerde eine Folie 45 x 45 cm kosten? (+ Versandspesen Deutschland/
Oesterreich/ Schweiz)
Joachim B. schrieb:> Torsten C. schrieb:>> Welche meinst Du? Die, die ich meine, können alle 25V ab.>
Dann eruebrigt sich ja die Diskussion ob 12 oder 24V.
Joachim B. schrieb:> dann zeige noch mal Links
Tatsache:
Die Mini-360 haben einen MP2307 drauf und die größeren einen MP1584.
Der Unterschied fällt auf den ersten Blick gar nicht so auf.
Der MP2307 ist nur für bis zu 23V "Recommended Operating Conditions".
Immerhin gehen die "ABSOLUTE MAXIMUM RATINGS" bis 26V:
https://www.adafruit.com/datasheets/MP2307_r1.9.pdf
Bei 24V ist das so ähnlich wie WS2812B-LEDs mit einem STM32 ohne
Pegelwandler ^^ ansteuern: Es kann gehen, muss es aber nicht.
Die meisten 24V-Netzteile kann man aber am Trimmpoti auf 23V runter
stellen.
Mit den "größeren" MP1584 wärst Du auf der sicheren Seite.
Die TK0260 werden von Benq für 12V genutzt; 12V stehen daher oft in der
Überschrift. Sie können aber "Input voltage: 9-25V".
http://www.dhgate.com/product/TK0260/152953275.html
Falls Dir die Mini-360 mit MP2307 nicht zu riskant sind, statt ebay für
51cent auch bei Aliexpress:
http://www.aliexpress.com/item/Mini-360/1888459743.html
Das größere mit dem MP1584 ist hier sehr gut beschrieben:
http://www.hotmcu.com/mp1584-buck-step-down-3a-adjustable-regulator-module-p-82.html
PS: Anbei ein Bild von dem Winzling mit KrokoKlemme vom Tastkopf zum
Größenvergleich. Mein Netzteil könnte ich bis 19,6V runter drehen. Das
Angebot für 51cent hatte ich gerade erst gefunden. Ich habe eben nochmal
40 Stück bestellt.
PPS: 50 Stück gehen auch noch ohne Ärger mit dem Zoll:
http://www.aliexpress.com/item/Mini-360/32251699653.html
Herbert P. schrieb:> Soweit ich mich erinnern kann, ist bei der Original QlockTwo an der> Decke ein kleines Kästchen mit dem Netzteil befestigt
Hast Du davon ein Bild?
Ich habe zur Installation diese Seite gefunden:
http://www.qlocktwo.com/Q2installation.php?lang=de
Für "Wandmontage ohne direkten Stromauslass aus der Wand" würde ich
statt "Qlocktwo Qable" mit Stoffmantel z.B. eher M&G-Techno
Lautsprecherkabel 2x1,5 mm² nehmen, z.B. ebay 201111697192.
Noch edler wäre vielleicht "Inakustik Super Flat".
Ggf. kann das 23..24V-Kabel ja in einer Fußleiste weiter laufen, falls
man eine hat.
Torsten C. schrieb:> Das Kabel ebay 290893088866 kann man festnageln und die Nagel-Köpfe mit> weißer Farbe tarnen.
Wenn man die Stromzufuhr von unten macht, würde wohl ein Kabelkanal am
besten ausschauen. Ein Querschnitt von 10 x 10 mm müsste reichen, und
welches Kabel da drinnen ist, wäre Conchita. Wenn die Uhr über einer
Couch oder einem Kastl hängt, könnte das Netzteil auch frei am Boden
liegen (sofern die Hausfrau darüber keinen Tobsuchtsanfall bekommt).
Ich werd mich heute auf die Suche nach einer Deckenbefestigung machen,
wie ich sie mir vorstelle, und nach Möglichkeit ein Bild herein stellen.
Joachim B. schrieb:> ich hatte auch schon weisse Stecker SNT gefunden mit 12/24V aber nur bis> 20/24W müsste grad so gehen
Wenn das Netzteil an der Decke angebracht wird, würde ich es ohnehin in
einen weißen, quaderförmigen Baldachin verbauen (den man allerdings
selbst anfertigen - bzw. lassen - müsste). Jede Deckenlampe hat einen
Baldachin an der Decke, also würde das bei einer Uhr, die von der Decke
herunter hängt, meines Erachtens auch nicht stören.
Hier übrigens ein Halogen-Niedervoltseil zum Abhängen von der Decke, von
dem wir unlängst gesprochen haben. Gibt's offensichtlich als Meterware
mit Querschnitt 4 mm^2 und 6 mm^2, das sollte eigentlich reichen. Im
Gegensatz zu Lautsprecher- und ähnlichen Kabeln ist es auf Zug belastbar
und könnte gleichzeitig als Aufhängung für die Uhr dienen.
http://www.ebay.de/itm/151462118006?ssPageName=STRK%3AMEBIDX%3AIT&fromMakeTrack=true
Torsten C. schrieb:> Um das Meinungsbild> zu erweitern: Meine Familie bevorzugt das M&G-Techno Lautsprecherkabel^^> von unten und will keinen quaderförmigen Baldachin.
Wie Du richtig bemerkt hast, lässt sich über Geschmäcker nicht streiten
- vor allem nicht mit der eigenen Familie ;-)
Ich denke auch, dass eine Stromzuführung von unten die am einfachsten zu
realisierende Lösung ist (wenn es mit Kabelschellen stramm gespannt ist,
fällt es wohl auch nicht allzu unangenehm auf). Trotzdem finde ich
persönlich, dass eine Deckeninstallation mit Seilen die zwar
aufwändigere, aber optisch ansprechendere Variante wäre.
Jetzt ist mir während des Schreibens noch eine Idee gekommen, dazu muss
ich jedoch erst ein Bildchen anfertigen.
Herbert P. schrieb:> Jetzt ist mir während des Schreibens noch eine Idee gekommen, dazu muss> ich jedoch erst ein Bildchen anfertigen.
dein Kabelkanal ist recht kurz und die aufgekloppte Wand hast du gut
zugespachtelt, da hättest du gleich bis zur Uhr weiter photoshoppen
können :-)
Joachim B. schrieb:> dein Kabelkanal ist recht kurz und die aufgekloppte Wand hast du gut> zugespachtelt, da hättest du gleich bis zur Uhr weiter photoshoppen> können :-)
LOL das ist kein Kabelkanal, sondern ein "Balduin" (oder wie man das
nennt ... grins), in dem das Netzteil verbaut ist.
Hier noch ein paar Ideen.
Herbert P. schrieb:> "Balduin" (oder wie man das nennt ... grins)
Z.B. "Lampenbaldachin" bei Wikipedia.
Unsere Meinung zu dritt: So schlimm sieht der doch nicht aus, aber wie
kommen die 230V zum Lampenbaldachin?
"Holzleisten" sieht besser aus als "Holzpanel". Aber auch bei
"Holzleisten" wird man durch das "Drumrum" stark von der Uhr abgelenkt.
Auch der Lampenbaldachin lenkt etwas stärker ab als ein weißes Kabel
(oder ein weißer Kabelkanal) nach unten.
Torsten C. schrieb:> Unsere Meinung zu dritt: So schlimm sieht der doch nicht aus, aber wie> kommen die 230V zum Lampenbaldachin?
Tja, da muss man mit dem Nachbarn oberhalb (oder mit den Kindern, falls
dsa Kinderzimmer drüber liegt), ein gutes Einvernehmen herstellen, damit
man durch den Fußboden durchbohren darf ;-)
Nein, im Ernst: ein dünner Kabelkanal in der Ecke, der über die gesamte
Raumlänge geht, würd's auch tun. Oder eine Stuckleiste....
Aber wenn jemand seine Kabel liebt, soll man ihm die nicht wegnehmen :-)
Joachim B. schrieb:> Lötkolben, Spitze frisch angespitzt-> 0,35mm Zinn
Da bist Du ja vom Mäuse Melken nimmer weit entfernt, tsss tsss...
Ich geb mich im Augenblick mit massiverem Schrott ab. Hab grad meinen
neuen Bohr- & Fräsständer geliefert bekommen. Der
Prototypen-MDF-Platten-Fertigung (schönes Wort) steht somit
werkzeugmäßig nichts mehr im Wege (außer, dass meine Werkstatt nicht
beheizbar ist, aber da fällt mir auch noch eine Lösung ein).
Herbert P. schrieb:> Hab grade bei chip_partner für € 2,50 ein schnuckeliges RTC-Modul> entdeckt:>> Ebay-Artikel Nr. 121474408359>> "plus or minus 5 PPM (+/- 0.432 SEC/day)"
Da fehlt aber die Batterie, oder? Wenn Du abschaltest, ist die Uhzeit
weg.
Ich habe mir dieses bestellt:
www.amazon.de/gp/product/B00K67X496
Ist aber noch nicht da, obwohl ich es vor 2 Wochen bestellt habe.
RTC ist dieselbe, aber da ist noch ein EEPROM drauf zum Speichern der
Einstellungen, wie IR-Codes, Farbprogramme, NTP-Server, IP-Adresse und
so weiter. Grund: Der STM32 hat kein internes EEPROM wie die AVRs.
P.S.
Die Reichelt DCF77-Module, die ich hier noch rumfliegen hatte, sind
wirklich sehr störanfällig. Nur ca. alle 5 Minuten kommt mal ein
komplettes Minuten-Signal durch. Da ein neues Stellen der RTC einmal am
Tag schon dicke ausreicht, ist das nicht soo schlimm. Bei den
Pollin-Teilen ist es ähnlich: Einmal am Tag sollte man auch damit
hinkriegen.
EDIT:
Oben den Hinweis auf die fehlende Batterie hinzugefügt.
Woher bezieht Ihr eigentlich die Flachbandkabel, Stecker- und
Buchsenleisten? Das mechanische Zeug ist ja unter Umständen teurer als
die ganze Elektronik.
Herbert P. schrieb:> Sodial liefert nicht nach Österreich. Das hier sollte aber eigentlich> baugleich sein, denke ich (und kostet weniger als die Hälfte):>> Ebay-Artikel Nr. 181575455758
Ja, ist identisch. Guter Preis!
Herbert P. schrieb:> Woher bezieht Ihr eigentlich die Flachbandkabel, Stecker- und> Buchsenleisten? Das mechanische Zeug ist ja unter Umständen teurer als> die ganze Elektronik.
Von Reichelt. Kostet nur ein paar Cent (in der Summe ein paar EUR) und
ist innerhalb von 2 Tagen da.
Frank M. schrieb:> Ja, ist identisch. Guter Preis!
hatte ich aber auch schon geschrieben :-) (und noch mal 5 bestellt,
liegen schon hier, der letzte hat mich gelinkt ohne LiR Akkus und die
nachkaufen hier wird viel teurer, also nehme ich die aus der DS1307
Lieferung weil die 1307 eh nix taugen, also immer nachfragen ob die
LIR2032 dabei sind)
Joachim B. schrieb:> hatte ich aber auch schon geschrieben :-)
Sorry, der Thread ist mittlerweile schon soooo lang, dass ich manchmal
etwas übersehe, wenn ich mit dem Nachlesen nicht mehr nachkomme.
Joachim B. schrieb:> weil die 1307 eh nix taugen, also immer nachfragen ob die> LIR2032 dabei sind)
Oki, danke für den Tipp! Sind die DS1307 tatsächlich solcher Schrott,
dass man sie besser gleich "as is" in den Mülleimer wirft?
Wieder einmal ein Ausflug zum mechanischen Aufbau, Thema Bohren/ Fräsen
der MDF-Montageplatte:
Da die Montageplatte 45 x 45 cm groß ist, muss die Vorlage zum Bohren/
Fräsen "WC24h18x16 Bohrplan Frontplatte 45x45cm.pdf" (siehe
WordClock24h, Kapitel 10 "Downloads") auf vier DIN A4 Blätter
aufgeteilt werden. Das erledigt man am Einfachsten mit dem Programm
"Posterazor" (Freeware), welches die pdf-Vorlage im Format 45 x 45cm auf
4 Teile im DIN A4-Format aufteilt. Die 4 Teile werden ausgedruckt und
zur Bearbeitung der MDF-Platte mittels wiederablösbarem Sprühkleber
aufgeklebt.
http://www.chip.de/downloads/PosteRazor_20009565.html
Herbert P. schrieb:> Sind die DS1307 tatsächlich solcher Schrott,> dass man sie besser gleich "as is" in den Mülleimer wirft?
Ich habe noch 3 Stück mit AT24C32-EEPROM und DS1307 in der Bastelkiste,
die müssen erstmal verbraucht werden. Die sollten ja kompatibel sein,
also kein Problem.
Wenn einmal am Tag mit DCF-77 oder NTP synchonisiert wird, macht das
dann überhaupt einen Unterschied?
Torsten C. schrieb:> Wenn einmal am Tag mit DCF-77 oder NTP synchonisiert wird, macht das> dann überhaupt einen Unterschied?
Vielleicht bin ich blauäugig, aber ich gehe einmal davon aus, dass die
RTC einigermaßen präzise arbeitet und daher eine Synchronisation einmal
pro Woche schon mehr als ausreichend sein müsste. Ich stell' ja meine
Quarzuhr auch nur einmal im Monat nach, wenn überhaupt.
Torsten C. schrieb:> Wenn einmal am Tag mit DCF-77 oder NTP synchonisiert wird, macht das> dann überhaupt einen Unterschied?
ja wenn, sonst läuft die Uhr in einer Woche um Minuten falsch....
leider, aber bei gleichem Preis ist es für mich keine Frage mehr was ich
nehme DS3231 mit LiR2032 Akku und CR geht nicht weil diese Module
aufladen, eine CR würde explodieren! also müsste man vom Modul die Lade
R und Diode runterlöten.
Die DS3231 hat noch den Vorteil, INT ausgang und 2 Alarmregister, kann
den MC schlafen schicken und per Uhr aufwecken oder nachts die Anzeige
ausschalten und am Tag wieder an alles nach belieben.
Joachim B. schrieb:> Torsten C. schrieb:>> Wenn einmal am Tag mit DCF-77 oder NTP synchonisiert wird, macht das>> dann überhaupt einen Unterschied?> ja wenn, sonst läuft die Uhr in einer Woche um Minuten falsch....
OK, dann kann ich ja bei den DS1307 aus der Bastelkiste bleiben und
synchonisiere einmal pro Tag. Dann kann ich nämlich weiter machen und
muss auf keine Bestellung warten. :-)
Ist für Euch auch der Fortschritt mit den Matrix-Kacheln interessant?
Oder brauche ich dazu hier nix schreiben?
Ich habe hier noch vier Kacheln mit 1/16-Scan rum liegen, Anschluss:
http://www.mikrocontroller.net/articles/Datei:HUB_08_RGB.jpg
Die Pinbelegung für den STM32F103C8T6 habe ich mir so gedacht:
https://gist.github.com/TorstenC/c244faba28e97dbbeca5
Vielleicht können wir die SW-Architektur weitgehend vereinheitlichen.
Anbei mal ein "Schuss ins Blaue".
Torsten C. schrieb:> Sie können aber "Input voltage: 9-25V" …
… wenn C1 nicht - wie hier - mit einem 16V-Elko bestückt ist.
Peng! Siehe Bild.
Ich werde mal einen größeren drauf löten, sind ja
zum Glück "Through Hole Technology".
Torsten C. schrieb:> OK, dann kann ich ja bei den DS1307 aus der Bastelkiste bleiben und> synchonisiere einmal pro Tag.
Ja, natürlich reicht die DS1307. Diese wird auch bereits im bestehenden
Word Clock-Projekt eingesetzt. Aber dass die DS3231 dazu kompatibel
ist, sehe ich auf den ersten Blick auf die Datenblätter nicht so.
Da muss die Software auf jeden Fall angepasst werden. Ist aber kein
Problem, denn die DS1307-Software für die bestehende Word Clock
stammt auch aus meiner Feder. Die Anpassung kann ich direkt in der
STM32-Software berücksichtigen.
Torsten C. schrieb:> Die Pinbelegung für den STM32F103C8T6 habe ich mir so gedacht:
Steht die Entscheidung für dieses Board schon fest? Kann ich es schon
bestellen (ich brauchs nur für die Uhr und nicht für die "Bastelkiste")?
Herbert P. schrieb:> Steht die Entscheidung für dieses Board schon fest?
Um das Projekt für Nachbauer interessant zu machen, macht es Sinn, kein
unnötig teures Board zu nehmen. Allerdings ist auf dem 4€-Board kein
ST-Link/V2 SWIM drauf. Also muss der Nachbauer entweder den Bootloader
nutzen und hat keine IDE um vernünftig die Firmware tunen zu können,
oder er benötigt zusätzlich noch ein Nucleo oder Discovery. Dann könnte
man auch gleich das Platinen-Layout für ein Nucleo machen. Ich habe aber
kein Nucleo, nur ein Discovery.
Ich würde die Entscheidung für ein gemeinsames PCB-Layout noch vertagen,
bis alle Prototypen laufen. Die 4€-Variante reicht aber aus und ist
schön klein.
In "SW-Architektur.png" ^^ hatte ich den Gedanken, die Pinbelegung
flexibel zu gestalten, für unterschiedliche PCBs.
Herbert P. schrieb:> Torsten C. schrieb:>> Die Pinbelegung für den STM32F103C8T6 habe ich mir so gedacht:
Dieser Gedanke ist "speziell" für die LED-Matrix mit 1/16-Scan,
HUB08-Interface und bisher ohne PCB-Layout. Ich poste heute mal ein
Photo.
Ich habe mir das CoIDE-Projekt von Frank noch nicht angeschaut.
Eventuell kann ich mit der HUB08-Version ja trotzdem die SW weitgehend
übernehmen, so dass nur ein paar #define und #ifdef ergänzt werden
müssen.
Herbert P. schrieb:> Kann ich es schon bestellen
Eins oder zwei kann ich Dir per Warensendung schicken.
Frank M. schrieb:> Da muss die Software auf jeden Fall angepasst werden.
jain, Uhrzeit
RTC.getTime();
RTC.year, RTC.month, RTC.day, RTC.hour, RTC.minute, RTC.second
geht sofort,
was nicht geht ist RTC.getRAM logisch, der DS3231 hat keinen, die
Refister sind bis 06h identisch, sogar die I2C Adresse
Torsten C. schrieb:> Eins oder zwei kann ich Dir per Warensendung schicken.
Nach Deinen obigen Ausführungen denke ich, dass ich wohl besser noch ein
wenig zuwarte.
warum nimmst Du einen Timer? Ich nehme einen USART oder SPI, dann wird
für den DMA-Speicher nicht so viel Platz gebraucht.
* Timer: 1 uint16 pro Bit (2 Byte pro Bit)
* USART: 1 Byte pro 2 Bit (½ Byte pro Bit)
Bei mir läuft gerade die USART-Version, SPI geht aber auch.
Torsten C. schrieb:> warum nimmst Du einen Timer? Ich nehme einen USART oder SPI, dann wird> für den DMA-Speicher nicht so viel Platz gebraucht.
Erstens ist genügend RAM da, zweitens bleibt die CPU frei für andere
Aufgaben. Die Übertragung läuft quasi im Hintergrund.
> Bei mir läuft gerade die USART-Version, SPI geht aber auch.
Ja, ist Geschmackssache. Viele Wege führen nach Rom. Aber wenn man schon
DMA hat, dann sollte man dies auch nutzen. Ich kann schon während der
Übertragung die nächsten RGB-Werte fürs Fading (gleitender Übergang der
Farben beim Minutenwechsel) berechnen.
P.S.
Schlage mich gerade mit dem ESP8266 herum. So eine sch.... Firmware habe
ich noch nie erlebt. Manche Antworten enden mit OK, manche nicht, die
Zeilenanzahl der Antworten sind beliebig variabel, das Echo lässt sich
nicht abstellen (man muss den ganzen Schlonz, den man sendet, aus dem
Input-Strom wieder rausfiltern... Ätzend. Und dann das Ergebnis: Die
aktuelle Firmware, die ich draufhabe, kann zwar UDP senden, aber nicht
empfangen.
Also: Erst mal Firmware-Update machen. Bei der Recherche stelle ich dann
fest, dass irgendein irrer Hacker einen NTP-Client in die Firmware
gehackt hat. Jetzt schlage ich mich mit dem Firmware-Update-Programm
herum, welches dauernd abstürzt. Dann gibt es noch unterschiedliche
Meinungen, welche Zieladressen für das Firmware-Update verwendet werden
müssen.... ätzend.
Dieses ESP8266 ist sowas von krank....
Frank M. schrieb:> P.S.> Schlage mich gerade mit dem ESP8266 herum.
fein fein, ich schlage mich gerade mit der "Arduino m1284p" rum, mein
Progamm auf dem m328p läuft auf dem m1284p nicht.
Frank M. schrieb:> Aber wenn man schon DMA hat, dann sollte man dies auch nutzen.> Die Übertragung läuft quasi im Hintergrund
Bis auf das "ABER" sehe ich das genauso, sowohl bei UART als auch
bei Timern oder anderen Alternativen.
"½ Byte pro Bit" ^^ bezieht sich ja auch auf die
DMA_BufferSize (DMA-Speicher^^).
Frank M. schrieb:> Erstens ist genügend RAM da
Jedem das Seine, ich finde ½ Byte pro Bit besser als 2 Byte pro Bit,
werde nicht auf Timer umstellen und lasse das so:
Torsten C. schrieb:> Ist für Euch auch der Fortschritt mit den Matrix-Kacheln interessant?> Oder brauche ich dazu hier nix schreiben?
Hmmm. Ich poste trotzdem mal ein Foto vom Zwischenstand.
❶ TK0260 mit größerem C1
❷ STM32F103C8T6-Modul für 4€ aus China
❸ ST-Link/V2 SWD am Discovery
❹ 24V-Netzteil auf 22,9V justiert („+V ADJ“)
❺ Buck-Wandler aus China mit Strombegrenzung und integriertem
Volt- und Amperemeter
❻ 32x16 LED-Matrix mit 1/16-Scan, kaskadierbar
Hi Torsten,
Torsten C. schrieb:> Jedem das Seine, ich finde ½ Byte pro Bit besser als 2 Byte pro Bit,> werde nicht auf Timer umstellen und lasse das so:
Für nicht verbrauchtes RAM gibts kein Geld zurück ;-)
Nee, mal im Ernst: Das Disco-Board hat knapp 200k RAM, das Nucleo-Board
knapp 100k. Momentan bin ich mit allem PiPaPo bei 24k verbrauchtem RAM
für die komplette Software. Insgesamt kommen höchstens noch ein paar 100
Bytes für Farbprogramme, RTC usw. Wir sind also dick im grünen Bereich.
Ich sehe daher momentan überhaupt keine Veranlassung, funktionierenden
Code, welchen den µC nur minimal belastet, zu ersetzen.
> Du kannst natürlich machen, was Du willst, aber vielleicht kommen wir ja> doch noch auf einen Konsens.
Lass uns darauf nochmal später darauf zurückkommen und stellen wir das
erstmal zurück. Ich will da auch keinen Glaubenskrieg draus machen. Für
mich ist erstmal die höchste Priorität, alle vorgesehenen Komponenten
zum Laufen zu bringen, damit wir etwas in der Hand haben. Nur so können
wir weitere Fans der WordClock24h gewinnen, die wir auch brauchen für
die Sammelbestellung. Später kann man immer noch am Komplettpaket
schrauben. Ist das okay für Dich?
Gruß,
Frank
Torsten C. schrieb:> Um das Projekt für Nachbauer interessant zu machen, macht es Sinn, kein> unnötig teures Board zu nehmen. Allerdings ist auf dem 4€-Board kein> ST-Link/V2 SWIM drauf. Also muss der Nachbauer entweder den Bootloader> nutzen und hat keine IDE um vernünftig die Firmware tunen zu können,> oder er benötigt zusätzlich noch ein Nucleo oder Discovery.
Die Steuerungs-Elektronik ist wohl das Billigste an dem ganzen Projekt.
Allein die Frontplatte, das Gehäuse und die LEDs kosten zusammen mehrere
hundert Euro - das 24V-Netzteil nicht zu vergessen. Da spielen ein paar
Euro auf oder ab bei der Mikrocontroller-Einheit meines Erachtens keine
Rolle. Ein wesentliches Kriterium ist jedoch die Baugröße.
Ich würde es sehr begrüßen, wenn außer den WS2812 RGB Strips auch noch
andere Hardware-Varianten Berücksichtigung finden könnten, z.B. diskrete
monochrome LEDs mit TLC5940 Ansteuerung. Dabei gehts mir "lediglich" um
die Möglichkeit der Ansteuerung und die Berücksichtigung in der
Firmware, die Hardware dieser Lösungen müsste sowieso auf extra PBCs
oder Lochrasterplatinen Platz finden.
Frank M. schrieb:> Wir sind also dick im grünen Bereich.
Du vielleicht. Hier meine Rechnung:
864 Bytes RGB-Daten (18 x 16 x RGB)
3456 Bytes ausgerollt beim USART-DMA
13824 Bytes ausgerollt beim Timer-DMA
20480 Bytes total RAM beim STM32F103C8T6
Frank M. schrieb:> Momentan bin ich mit allem PiPaPo bei 24k verbrauchtem RAM
Das wäre meinem STM32F103C8T6 zuviel.
Frank M. schrieb:> Ist das okay für Dich?
Selbstverständlich. Mir geht es um ein gemeinsames Verständnis, dass wir
nicht aneinander vorbei reden.
Was hältst Du von einheitlichen Schnittstellen (.h-Dateien), siehe
SW-Architektur.png?
Herbert P. schrieb:> Allein die Frontplatte, das Gehäuse und die LEDs kosten zusammen mehrere> hundert Euro
Teuer geht natürlich immer! Wirklich teuer ist m.E. nur die Frontplatte,
weil sie in Auftrag gegeben wird und keine Overhead-Folien reichen.
Was meinst Du mit Gehäuse? Ich komme eher auf ~15€ (MDF-Platte,
Alu-Profile, Farbe, Kleber, ...).
Zu den LEDs, das kommt darauf an:
* LED-Display-Module (wie ❻ in Aufbau.jpg): 2 x 15€ = 30€
* 288 monochrome LEDs: 6€ + Schieberegister + LED Sink Driver
Netzteil 24v, 1A: 5€
Herbert P. schrieb:> Da spielen ein paar Euro auf oder ab bei der Mikrocontroller-Einheit> meines Erachtens keine Rolle.
Das ist klar. Viele fangen Projekte an und merken dann, dass es nix für
sie ist oder lieber was anderes zuende machen. Die teuren Teile
(Frontplatte) kauft man zum Schluss, wenn alles andere geklappt hat.
Oder sie bauen aus den gekauften Teilen am Ende was ganz anderes.
Was ich mit "Projekt für Nachbauer interessant machen" ^^ meinte ist:
Die Einstiegshürde (ohne Frontplatte + Gehäuse) so klein wie möglich
machen.
Herbert P. schrieb:> Ich würde es sehr begrüßen, wenn … auch noch andere Hardware-Varianten> Berücksichtigung finden könnten
Vielleicht auf Colorduino-Basis?
http://mikecchin.wordpress.com/2013/08/10/8x8-rgb-led-display/
Hier ein Vergleich zum Rainbowduino:
http://123led.wordpress.com/colorduino/
Herbert P. schrieb:> Die Steuerungs-Elektronik ist wohl das Billigste an dem ganzen Projekt.> Allein die Frontplatte, das Gehäuse und die LEDs kosten zusammen mehrere> hundert Euro - das 24V-Netzteil nicht zu vergessen. Da spielen ein paar> Euro auf oder ab bei der Mikrocontroller-Einheit meines Erachtens keine> Rolle. Ein wesentliches Kriterium ist jedoch die Baugröße.
Das sehe ich genauso. Deshalb favorisiere ich nachwievor das
Nucleo-Board. Das ist Ready-To-Use, weil es eine ST-Link-Schnittstelle
hat. D.h. jeder User mit PC kann per ST-Link-Programm die Hex-Datei
flashen. Er braucht also keinerlei zusätzliche Hardware. Und es ist
flacher als das Disco-Board. Damit lassen sich die von Herbert
geforderten 2,5cm einhalten.
Noch ein Vorteil: Es ist auch zukünftig verfügbar. Bei den China-Modulen
weiß man das nie. 12 EUR für das Nucleo-Board sind auch absolut in
Ordnung. 2 Tage(!) nach der Bestellung ist das Teil da. Man muss also
keine 4-6 Wochen warten.
Ich werde aber weiterhin erstmal mit dem Disco-Board entwickeln und dann
am Schluss die Software auf das Nucleo-Board portieren.
Ein Zwischenstand zum ESP8266:
Ich habe mir den Krampf mit dem ESP8266 als (S)NTP-Client per UDP von
der Backe gestrichen. Allein schon die Flasherei der Firmware kann man
keinem Otto-Normal-User zumuten.
Ich bin daher einen anderen Weg gegangen. Die meisten NTP-Server können
auch über das time-Protokoll kommunizieren (z.B. ntp1.ptb.de,
ntp2.ptb.de und ntp3.ptb.de). Das Schöne daran: Es funktioniert auch per
TCP statt UDP.
Und siehe da: Es funktioniert dann auch ohne Firmware-Update. Einfach
anschließen und läuft :-)
Bisher habe ich das unter Windows getestet, jetzt kann ich das auf das
STM32-F4-Disco-Board portieren....
Frank M. schrieb:> Bisher habe ich das unter Windows getestet
Da bin ich auch gerade dran. Ich bin schon mal froh, dass ich mit
"AT+CWLAP" alle meine Netze bekomme und mit AT+CWJAP="…","…" die
Verbindung zur Fritzbox bekomme. Ich habe:
> AT+GMR> 00160901
Meine erste Prio wäre per Telnet zunächst Kommandos wie "Mode
umstellen", "Uhrzeit stellen" oder "Demo start/Stop" beim µC absetzen zu
können.
Du arbeitest gerade an der anderen Richtung: Der µC baut eine Verbindung
zu einem Server auf.
Bei mir wäre der ESP8266 der Server, bei Dir Client. Richtig? Geht mit
"AT+CWMODE=3" beides gleichzeitig?
Würdest Du bitte mal die AT-Kommandos posten, in welcher Reihenfolge Du
was machst?
PS: Herbert P. schrieb:> Steht die Entscheidung für dieses Board schon fest?Frank M. schrieb:> Deshalb favorisiere ich nachwievor das Nucleo-Board.
Von mir aus können wir uns auf ein Nucleo festlegen. Welches?
Torsten C. schrieb:>> AT+GMR>> 00160901
Bei mir ist die Firmware älter, nämlich:
00150900
> Meine erste Prio wäre per Telnet zunächst Kommandos wie "Mode> umstellen", "Uhrzeit stellen" oder "Demo start/Stop" beim µC absetzen zu> können.
Okay, das mache ich bereits mit der IR-Fernbedienung. Da muss ich nicht
erst einen PC einschalten, um die Uhrzeit zu stellen.
> Du arbeitest gerade an der anderen Richtung: Der µC baut eine Verbindung> zu einem Server auf.>> Bei mir wäre der ESP8266 der Server, bei Dir Client. Richtig? Geht mit> "AT+CWMODE=3" beides gleichzeitig?
Geht, mit AT+CIPMUX=1
> Würdest Du bitte mal die AT-Kommandos posten, in welcher Reihenfolge Du> was machst?
Wobei man nur die beiden letzten braucht. Die anderen testen nur, ob
eine Verbindung zum AP besteht und eine IP-Adresse zugewiesen wurde.
Das Anmelden beim AP braucht man nur einmal zu machen. Das Ding merkt
sich den AP, bleibt also auch bei Poweroff gespeichert. Ich werde das in
der STM32-Software so machen, dass man in einer Config-Datei einmal die
SSID und Key eintragen kann. Dann wird die Verbindung aufgenommen.
Anschließend kann man beide Parameter in der Config-Datei wieder
löschen.
> Von mir aus können wir uns auf ein Nucleo festlegen. Welches?
Nucleo F401-RE
EDIT: Gibts bei hbe-shop.de für 11,19 EUR.
Musst Du aber jetzt nicht kaufen. Wie gesagt: Ich bleibe erstmal beim
Disco-Board, bis die SW einen stabilen Stand hat. Dann portiere ich sie
auf das Nucleo-Board.
Frank M. schrieb:> Nucleo F401-RE
Ich würde morgen gern meine Mouser-Bestellung auslösen. Ist da Konsens?
Frank M. schrieb:> Okay, das mache ich bereits mit der IR-Fernbedienung.
Ich noch nicht. Ich möchte über WLAN auch testen und debuggen.
Bevor ich einen IR TSOP oder eine RTC anschließe, nehme ich erstmal die
im STM32 die eingebaute RTC und baue mir eine WLAN-Fernbedienung mit
Touch-Screen für Fernseher, SAT-Receiver, WordClock,
Wohnzimmer-Beleuchtung und … alles Mögliche.
Torsten C. schrieb:> Ich würde morgen gern meine Mouser-Bestellung auslösen. Ist da Konsens?
Deine Sache. Ich schrieb ja eben:
Musst Du aber jetzt nicht kaufen. Wie gesagt: Ich bleibe erstmal beim
Disco-Board, bis die SW einen stabilen Stand hat. Dann portiere ich sie
auf das Nucleo-Board.
Frank M. schrieb:> Deine Sache. Ich schrieb ja eben …> Dann portiere ich sie auf das Nucleo-Board.
Schon klar, hab ich gelesen. Bist Du der einzige, der STM32-SW schreibt?
@Herbert, Joachim, Charly und alle anderen: Ich kann ja mit der
Bestellung auch noch warten:
Ist das Nucleo F401-RE Konsens?
Hallo zusammen,
es gibt pro "Buchstabe" vier Helligkeiten:
* 0: Aus
* 1: dunkel, wird heller
* 2: hell, wird dunkler
* 3: An
Darüber hinaus:
* Heklligkeit für "An":
1..255 (phptometrisch, also Gamma-korrigiert
* Fading-Wert (0..255):
- wird heller: 0 + Fading
- wird dunkler: 255 - Fading
Wäre das im Sinne von SW-Architektur.png^^ OK? Für die
LED-Display-Module müsste sowas in dieser Art festgelegt werden, da die
Helligkeit nicht wie bei den WS2812 in den LED-Controllern eingestellt
wird, sondern vom Timing im µC.
Darüber hinaus eine Farbe (3 Bit RGB) pro Buchstabe. OK?
VG Torsten
Torsten C. schrieb:> Herbert P. schrieb:>> Ich würde es sehr begrüßen, wenn … auch noch andere Hardware-Varianten>> Berücksichtigung finden könnten>> Vielleicht auf Colorduino-Basis?
Ich persönlich lege eigentlich weniger Wert auf Farbspiele und meinte
vor Allem die Ansteuerung diskreter monochromer LEDs mit TLC5940. Von
mir aus könnten zusätzlich auch noch 74HC595 oder andere Hardware
(Maxim,...?) Berücksichtigung finden, wie sie zum Nachbau der QlockTwo
verwendet und hier auch schon vorgeschlagen wurde. Es wäre schön, wenn
der Controller z.B. per Jumper für die gängigsten Hardwarevarianten der
LED-Ansteuerung konfigurierbar wäre - sofern sich der Mehraufwand dafür
in vertretbaren Grenzen hält und nicht ausufert. Denn Letzteres möchte
auch ich nicht.
Frank M. schrieb:> Das sehe ich genauso. Deshalb favorisiere ich nachwievor das> Nucleo-Board. Das ist Ready-To-Use, weil es eine ST-Link-Schnittstelle> hat. D.h. jeder User mit PC kann per ST-Link-Programm die Hex-Datei> flashen. Er braucht also keinerlei zusätzliche Hardware. Und es ist> flacher als das Disco-Board. Damit lassen sich die von Herbert> geforderten 2,5cm einhalten.
Die "geforderten 2,5cm" sind kein absolutes Muss, es geht mir dabei in
erster Linie um ein optisch harmonisches Gesamtbild: die Frontplatte der
Wortuhr sollte nicht allzu weit von der Wand abstehen.
Torsten C. schrieb:> Ist das Nucleo F401-RE Konsens?
Da für mich die STM32 Familie absolutes Neuland ist, schließe ich mich
selbstverständlich den Profis an. Sollte es auf eine Sammelbestellung
hinaus laufen, bin ich gerne mit von der Partie - allerdings ist bei mir
immer das Porto nach Österreich ein Thema.
Joachim B. schrieb:> Torsten C. schrieb:>> Ist das Nucleo F401-RE Konsens?>> ich bleibe bei Atmel m1284p
Da ich hauptsächlich vorerst der Atmel Familie treu bleiben möchte,
werde ich wohl 2 Varianten zu realisieren versuchen, eine mit STM32 und
eine mit dem m1284p. Ich brauch ja sowieso mehrere Wortuhren als
Geschenke im kommenden Jahr.
Herbert P. schrieb:> und> eine mit dem m1284p.
dannn können wir über eine Sammelbestellung der "Arduino m1284p"
bestückt nachdenken, oder soll der m1284p aufs Mainboard?
Joachim B. schrieb:> dannn können wir über eine Sammelbestellung der "Arduino m1284p"> bestückt nachdenken, oder soll der m1284p aufs Mainboard?
Grundsätzlich ja, aber was schwebt Dir da konkret vor?
@Joachim:
was ich gerne hätte, wären "Breakout Helper Boards" wie auf dem Link,
den Du mir unlängst gezeigt hast. Hab danach gesucht, bin aber nicht
fündig geworden.
Herbert P. schrieb:>> Vielleicht auf Colorduino-Basis?> Ich persönlich lege eigentlich weniger Wert auf Farbspiele und meinte> vor Allem die Ansteuerung diskreter monochromer LEDs mit TLC5940.
So war das ja auch gemeint. Ein Colorduino kann 192 LEDs (auch
monochrome). Für eine WC25h wären also zwei Stück nötig. Dafür ist alles
fertig bestückt auf einem PCB. Gibt es mit TLC5940 & Co auch was
fertiges?
Ist ja nur ein Vorschlag.
Herbert P. schrieb:> Joachim B. schrieb:>> dannn können wir über eine Sammelbestellung der "Arduino m1284p">> bestückt nachdenken, oder soll der m1284p aufs Mainboard?>> Grundsätzlich ja, aber was schwebt Dir da konkret vor?
weiss ich noch nicht, habe jetzt eine Anfrage an einen Fertiger gestellt
Platine fertig bestückt für den gezeigten mighty Arduino m1284p
Herbert P. schrieb:> @Joachim:>> was ich gerne hätte, wären "Breakout Helper Boards" wie auf dem Link,> den Du mir unlängst gezeigt hast.
sagte ich doch, die eagle Files sind downloadbar und bestellen kann man
sie bei jedem Platinenfertiger auch hier beim Platinensammler
Hans H. schrieb:> Es gibt im Moment noch keine 64-bit Version, da die aktuelle Version im> Simulationsmode vor allem zum Fehlerfinden in den Wortkombinationen> dienen soll.
Super Sache, was Du da fabriziert hast! Leider schließt sich das Fenster
sofort, wenn ich ein Taste drücke. Somit kann ich also die Zeit nicht
weiterschalten :-(
Hat das damit zu tun, dass ich Win7 in der 64 bit Version habe?
Hallo Herbert,
Simulationsmodus eingeschaltet? (Haken im Config-Dialog an)
Nur die Cursortasten, und Leertaste + 'm' drücken (siehe readme.txt).
Alle anderen Tasten beenden die Anwendung (auch Mausbewegungen!)
Wenns nicht geht PM an mich.
Joachim B. schrieb:> sagte ich doch, die eagle Files sind downloadbar und bestellen kann man> sie bei jedem Platinenfertiger auch hier beim Platinensammler
Danke für die Info, aber mir wäre wegen der hohen Versandkosten und weil
ich eigentlich nur einen Satz und nicht 3 benötige, eine Fertiglösung
lieber gewesen.
Ich hab jetzt 3 Sätze Original-Platinen für die FTDI- und ICSP-
Breadboard Helper bei OSH Park bestellt, und bei Mouser die Bauteile für
die 3 Sätze (gibt eine vorgefertigte Stückliste). Kannst bei Bedarf
einen Satz davon abhaben.
Mouser ist verrückt bei den Versandkosten nach Österreich. Die Bauteile
kosten € 11,62, die billigste Versandvariante € 20,-. Leider wurden die
Versandkosten erst am Ende des Bestellvorgangs ausgewiesen, hätte mir
aber eh nix geholfen, weil ich die Stückliste sicher nicht auf einen
anderen Lieferanten umgeschrieben hätte. :-(
Hans H. schrieb:> Nur die Cursortasten, und Leertaste + 'm' drücken (siehe readme.txt).
Danke für den Tip, funktioniert! War zu gierig darauf, das Ding endlich
zu testen, anstatt die readme.txt durchzulesen (hatte jetzt mehrere Tage
keinen Zugang zu meinem Windows-PC).
Ist ja ECHT SUPER!!!
Herbert P. schrieb:> Danke für die Info, aber mir wäre wegen der hohen Versandkosten und weil> ich eigentlich nur einen Satz und nicht 3 benötige, eine Fertiglösung> lieber gewesen.
OK, aber wenns die nun mal nicht gibt?
Herbert P. schrieb:> Mouser ist verrückt bei den Versandkosten nach Österreich. Die Bauteile> kosten € 11,62, die billigste Versandvariante € 20,-.
nach D genauso
Herbert P. schrieb:> Mouser ist verrückt bei den Versandkosten nach Österreich. Die Bauteile> kosten € 11,62, die billigste Versandvariante € 20,-. Leider wurden die> Versandkosten erst am Ende des Bestellvorgangs ausgewiesen, hätte mir> aber eh nix geholfen, weil ich die Stückliste sicher nicht auf einen> anderen Lieferanten umgeschrieben hätte. :-(
vielleicht eine Möglichkeit, wenn's nicht eilig ist:
Beitrag "[Biete] Sammelbestellung de.Mouser.com 2014"
Joachim B. schrieb:> OK, aber wenns die nun mal nicht gibt?
Ja klar, aber hätt ja sein können, dass Du zwischenzeitlich eine Quelle
aufgetrieben haben hättest können - oder so ähnlich ;-).
Wenn das Zeug da ist, geb' ich gerne ein bis zwei Sätze davon ab.
Jan L. schrieb:> vielleicht eine Möglichkeit, wenn's nicht eilig ist:>> Beitrag "[Biete] Sammelbestellung de.Mouser.com 2014"
Danke für den Tipp, werd ich mir merken für das nächste Mal!
Von den Versandspesen her ist für mich "rs components" der Günstigste -
von den Chinesen, die sowieso gratis liefern, einmal abgesehen. Und bei
den Versandkosten von Mouser kann sogar Conrad mit seinen
Apothekerpreisen noch locker mithalten, den hab' ich in der Nähe im
Einkaufszentrum. Aber ich mag halt Einkaufszentren nicht besonders :-(
hab mal ein Schaltplan / Layout f. den Arduino328
fertiggestellt, die Platine is ca 91mm x 50mm, werde
mal ein Paar bestellen damit das testen schnell losgehen
kann
vlG
Charly
Herbert P. schrieb:> " der Günstigste -> von den Chinesen, die sowieso gratis liefern, einmal abgesehen. Und bei> den Versandkosten von Mouser kann sogar Conrad mit seinen> Apothekerpreisen noch locker mithalten, den hab' ich in der Nähe im> Einkaufszentrum. Aber ich mag halt Einkaufszentren nicht besonders :-(
Gibt's die Sachen für die Breadboard-Helper nicht auch bei reichelt.at?
Deren Versandkosten sind imo doch ganz ok...
Jan L. schrieb:> Gibt's die Sachen für die Breadboard-Helper nicht auch bei reichelt.at?> Deren Versandkosten sind imo doch ganz ok...
Das mag schon sein, aber die Stückliste von Mouser war verlinkt, und ich
wollte mir nicht die Arbeit antun, das Kleinzeug selbst wo anders
zusammen zu suchen. Erfahrungsgemäß ist sowas keine Sache von einigen
wenigen Minuten, das kann in echte Arbeit ausarten.
Herbert P. schrieb:> Ich dachte, der 328 hat zu wenig Memory?
laut meiner Planung muesste es problemlos mit dem M328
funktionieren,falls ich mich irre kann man ja immer noch
ein M1284p aufstecken
vlG
Charly
Torsten C. schrieb:> es gibt pro "Buchstabe" vier Helligkeiten:>> * 0: Aus> * 1: dunkel, wird heller> * 2: hell, wird dunkler> * 3: An
Es ist wirklich schade, dass Du nicht schon früher mal in meine
STM32-Version reingeschaut hast. Ich bin da schon wesentlich weiter.
So ähnlich, wie Du das oben beschreibst, habe ich das Fading in dsp.c
bereits vor knapp 2 Wochen umgesetzt.
> Darüber hinaus:>> * Heklligkeit für "An":> 1..255 (phptometrisch, also Gamma-korrigiert
Auch schon seit fast 2 Wochen umgesetzt, siehe dsp.c.
> * Fading-Wert (0..255):> - wird heller: 0 + Fading> - wird dunkler: 255 - Fading
Ich arbeite prinzipiell mit den Gamma-korrigierten Werten und nicht mit
den absoluten RGB-Werten. Da bei den WS2812 nur 256 verschiedene
Helligkeitswerte möglich sind, hast Du als Gamma-Werte wesentlich
weniger Helligkeitsstufen zur Verfügung. Im Moment arbeite ich mit 32
Helligkeitsstufen, die in Werte zwischen 0 und 255 per Lookup umgesetzt
werden. Eventuell könnte man auch noch 64 nehmen, aber nach meinen Tests
bringt das kaum was bis gar nichts bei der miserablen Auflösung der
8212-Chips.
> Wäre das im Sinne von SW-Architektur.png^^ OK?
Ich finde das Schaubild prinzipiell okay, kannst Du ja so machen. So
ähnlich habe ich das auch strukturert.
> Darüber hinaus eine Farbe (3 Bit RGB) pro Buchstabe. OK?
Das hatte ich vor knapp zwei Wochen auch so, habe das aber unter dem
Gesichtspunkt, dass man sowieso nur eine Farbe gleichzeitig für alle
LEDs nutzt, optimiert. So konnte ich den 288 x 3 Bytes großen
Helligkeitsspeicher auf lockere 3 Bytes reduzieren. Das heißt, ich habe
nur eine globale aktuelle Farbe für alle LEDs.
Daher hier die Frage an alle Interessenten: Ist es sinnvoll, dass mehr
als eine Farbe gleichzeitig genutzt wird? Dann bohre ich den
Helligkeitsspeicher wieder auf 288 x 3 Bytes auf.
Herbert P. schrieb:> Jan L. schrieb:>> Gibt's die Sachen für die Breadboard-Helper nicht auch bei reichelt.at?>> Deren Versandkosten sind imo doch ganz ok...>> Das mag schon sein, aber die Stückliste von Mouser war verlinkt, und ich> wollte mir nicht die Arbeit antun, das Kleinzeug selbst wo anders> zusammen zu suchen. Erfahrungsgemäß ist sowas keine Sache von einigen> wenigen Minuten, das kann in echte Arbeit ausarten.
stimmt, aber apropos "Arbeit" - warum dann nicht gleich einfach einen
Arduino pro mini auf's Breadboard stecken? Das ist mein "Breadboard
Helper". ;-)
Frank M. schrieb:> Ich bin da schon wesentlich weiter. So ähnlich, wie Du das oben> beschreibst, habe ich das Fading in dsp.c bereits vor knapp 2 Wochen> umgesetzt.
Falls Du damit "den großen Larry" raushängen lassen willst, finde ich
das schade. Ich dachte, wir arbeiten hier zusammen.
In meinem Wohnzimmer habe ich Gamma-Fading mit WS2812 vor einem Jahr
umgesetzt. Da stehen auch "als Gamma-Werte wesentlich weniger
Helligkeitsstufen zur Verfügung". Wie ist Dein Hinweis auf "vor knapp 2
Wochen" gemeint?
Mir geht es um einen Konsens. Danke für den Hinweis, nun weiss ich, in
welcher *.c ich nachschauen kann. Und wenn Du jetzt schreibst, dass sich
das bewährt hat und so bleiben soll, kann ich das auch aus dsp.c
übernehmen.
Bei den LED-Display-Modulen ist das Timing übrigens flexibler. Mal
sehen, wieviele Helligkeitsstufen ohne zusätzlichen CPLD möglich sind,
eventuell flansche ich noch einen EPM3032A dran, wenn das ohne CPLD zu
wenige Stufen werden. Spätestens für Matrizen mit 1/8-Scan oder einer
LED-Laufschrift aus 8 oder mehr "Kacheln" wäre eh ein EPM3032A angesagt.
Frank M. schrieb:> kannst Du ja so machen. So ähnlich habe ich das auch strukturiert.
Wie gesagt: Mir geht es um Konsens. Falls Du das so gemacht hast, dass
die App mit einem anderen HAL auch auf einem M1284p, M328 oder
STM32F103C8T6 läuft, kann ich das übernehmen.
@Alle: Besteht denn überhaupt interesse an (zumindest weitgehend)
gemeinsamen Code, unabhängig von der verwendeten Hardware?
Frank M. schrieb:> Ist es sinnvoll, dass mehr als eine Farbe gleichzeitig genutzt wird?
Wegen mir nicht, ich übernehme gern die Version mit "nur eine Farbe
gleichzeitig".
Herbert P. schrieb:> eine mit STM32 und eine mit dem m1284p
Hmmm. Für mich besteht im Moment kein Grund, auf einen teureren Nucleo
umzustellen. Ich meine nicht, weil der ein paar € mehr kostet, aber die
Umstellung allein kostet ja auch Arbeit.
Wenn ich das richtig sehe, sind wir beim STM32 im Moment zu Zweit und Du
würdest die Discovery-Version übernehmen. Das würde jedenfalls Sinn
machen.
Frank M. schrieb:> Daher hier die Frage an alle Interessenten: Ist es sinnvoll, dass mehr> als eine Farbe gleichzeitig genutzt wird? Dann bohre ich den> Helligkeitsspeicher wieder auf 288 x 3 Bytes auf.
Mir fällt dazu - wenn überhaupt - lediglich eine einzige sinnvolle
Betriebsart ein:
Ein "Silvester-Feuerwerk" zum Jahreswechsel um Miternacht. Aber ob das
überhaupt jemand haben möchte und ob es den Aufwand lohnt, sei
dahingestellt.
Frank M. schrieb:> Daher hier die Frage an alle Interessenten: Ist es sinnvoll, dass mehr> als eine Farbe gleichzeitig genutzt wird? Dann bohre ich den> Helligkeitsspeicher wieder auf 288 x 3 Bytes auf.
Mir fällt dazu - wenn überhaupt - lediglich eine einzige sinnvolle
Betriebsart ein:
Ein "Silvester-Feuerwerk" zum Jahreswechsel um Mitternacht. Aber ob das
überhaupt jemand haben möchte und ob es den Aufwand lohnt, sei
dahingestellt.
Sorry wegen des doppelten Postings. Passiert manchmal beim
nachträglichen Editieren, weiß nicht warum :-(
Frank M. schrieb:> Daher hier die Frage an alle Interessenten: Ist es sinnvoll, dass mehr> als eine Farbe gleichzeitig genutzt wird? Dann bohre ich den> Helligkeitsspeicher wieder auf 288 x 3 Bytes auf.
ich stell mir spaeter ein LANGSAMES Farbfading oder auch eine
'Farbwelle' vor (spielkind), ich bin aber auf der Atmel-Schiene
mit dem M328, also keine Panik ;)
vlG
Charly
Torsten C. schrieb:> @Alle: Besteht denn überhaupt interesse an (zumindest weitgehend)> gemeinsamen Code, unabhängig von der verwendeten Hardware?
hmmm, gemeinsamer Code, wäre schön, ich mag nicht an allen Fronten
käpfen, gestern nur eine kleine Programmänderung und nix läuft mehr, ja
ich bin kein begnadeter Progger, aber ich beisse mich durch, deswegen
kommt auch im Rennen kein Pferdewechsel für mich in Frage.
Torsten C. schrieb:> Hmmm. Für mich besteht im Moment kein Grund, auf einen teureren Nucleo> umzustellen. Ich meine nicht, weil der ein paar € mehr kostet, aber die> Umstellung allein kostet ja auch Arbeit.
s.o.
Torsten C. schrieb:> Wie gesagt: Mir geht es um Konsens.
Ich bin gespannt, meine Version1 der Uhr läuft auf dem m328 miniPRO,
aber der Speicher war am Ende ich baue jetzt die m1284p Module auf.
Ich suche immer noch den Link zu RGB - HSV und umgekehrt Code
offensichtlich ist es auch nicht so leicht das LED Fading reinzubekommen
in RGB, eine Helligkeit in grün wird mit zumischen anderer Farben gleich
mehrfach heller, das sollte es nicht sein.
Joachim B. schrieb:> Ich bin gespannt, meine Version1 der Uhr läuft auf dem m328 miniPRO,> aber der Speicher war am Ende ich baue jetzt die m1284p Module auf.
du machst mir Angst.......
vlG
Charly
Charly B. schrieb:> du machst mir Angst
warum, ineffektive Programmierung, viele Gadgets fordern Speicher
I2C Tastatur
NokiaDisplay
RTC
Wlan
DCF
BlinkMuster (für anderes ohne Uhr)
und und und....
und viel Code selber nicht optimal geschrieben und redundant mit viel
Debug Ausgaben, da kann der Speicher eng werden. Kann ich später wenns
läuft ja kürzen, aber nicht während der Entstehung.
Aus der table.h kommt über die Data-API (Begriff aus SW-Architektur.png,
der Begriff ist ja egal), ein Bit pro Buchstabe raus.
Für ein Fading hätte man ein Array mit "alt" und "neu", also 2 Bits pro
Buchstabe:
10 -> dunkler werdend,
01 -> heller werdend,
11 -> 100% an lassen,
00 -> 0% aus lassen
Soweit scheint Konsens.
Charly B. schrieb:> ich stell mir spaeter ein LANGSAMES Farbfading oder auch eine> 'Farbwelle' vor (spielkind), ich bin aber auf der Atmel-Schiene> mit dem M328, also keine Panik ;
Falls der Code Hardware-unabhängig sein soll, sollte er vielleicht auch
auf der M328-Schiene laufen. Folgender Vorschlag:
Es gibt ein zweites Array mit einem Basis-RGB-Wert pro LED. Bei jeder
Aktualisierung muss dann jeweils der aktuelle Fading-Wert mit dem
Basis-RGB-Wert verknüpft und in das Sende-Array geschrieben werden.
Damit wäre man dann flexibel: Jedes Wort in einer anderen Farbe,
Farbwelle, alles in einer Farbe (eine Farbe pro Mode), ...
Torsten C. schrieb:> @Alle: Besteht denn überhaupt interesse an (zumindest weitgehend)> gemeinsamen Code, unabhängig von der verwendeten Hardware?
Das entspräche meinem Wunschdenken.
Ich träume sozusagen von einer "eierlegenden Wollmilchsau", bei der man
für die verschiedenen HW-Varianten klare Software-Schnittstellen und
Libraries zur Verfügung hat, die man mehr oder weniger nach dem
Baukastenprinzip zusammenlinken kann. Und zwar nicht nur bezüglich des
Controllers bzw. Controller Boards, sondern auch was die Peripherie
anbetrifft:
für die Farbvariante mit WS2812 wegen des kritischen Timings eher STM32,
für weiß mit TCL5940 eher Atmel.
Träumen wird man ja hoffentlich dürfen, 2 Tage vor Weihnachten ;-)
Ich hab gestern den ersten HTTP-Request per ESP8266 beantwortet. Ich
mache erstmal an dieser Baustelle weiter.
Ich kann die ESP8266-Seite durch die FritzBox ins WWW routen und wenn
ich meine alte Webcam noch zum laufen kriege, dann könntet Ihr selbst
dran rumspielen. Mal schauen.
Torsten C. schrieb:> Falls Du damit "den großen Larry" raushängen lassen willst, finde ich> das schade. Ich dachte, wir arbeiten hier zusammen.
Ich hatte hier am 04.12.
Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"
eine Liste gepostet mit den Dingen, die zu tun wären. Und ich hatte
damals schon gefragt, wer was von den Punkten anpacken will. Da kam von
Dir keine Antwort darauf.
> In meinem Wohnzimmer habe ich Gamma-Fading mit WS2812 vor einem Jahr> umgesetzt.
Das ist ja schön, aber Du hast nirgendwo gesagt: "Ich will das
übernehmen".
Also habe ich alles bisher selbst programmiert, da ich auf keine
Unterstützung hoffen konnte. Ich habe hier mehrmals die Zwischenstände
der STM32-Entwicklung gepostet und habe die Software-Versionen
hochgeladen. Du hast da noch nichtmals einmal reingeschaut, sondern
alles geflissentlich ignoriert. Auch als ich das schrieb mit dem Fading
und den gleitenden Übergängen, die ich implementiert habe.
Was war? Keine Antwort von Dir!
> Da stehen auch "als Gamma-Werte wesentlich weniger> Helligkeitsstufen zur Verfügung". Wie ist Dein Hinweis auf "vor knapp 2> Wochen" gemeint?
Da habe ich zuletzt hier gepostet:
Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"> Mir geht es um einen Konsens.
Es kam leider nie ein Feedback von Dir. Okay, dachte ich, dann muss ich
das wohl selber machen. Und ich habe keine Lust, meine Arbeit, die ich
mir bisher gemacht habe, wegzuwerfen, weil Du plötzlich Konzepte
auspackst, die längst umgesetzt sind.
> Danke für den Hinweis, nun weiss ich, in> welcher *.c ich nachschauen kann.
Soviele Sources sind das ja nicht ;-)
> Und wenn Du jetzt schreibst, dass sich> das bewährt hat und so bleiben soll, kann ich das auch aus dsp.c> übernehmen.
Gern. Da kann man bestimmt auch noch Optimierungen vornehmen.
> Wie gesagt: Mir geht es um Konsens.
Wie gesagt: Ich habe alle Zwischenstände der Software hier gepostet
und im Artikel alle Stände hochgeladen und verlinkt. Und ich habe eine
Anleitung geschrieben, wie man die Software auf dem Disco-Board
ausprobieren kann. Ich hatte eigentlich erwartet, dass Du das Ding mal
durch den Compiler schickst und ausprobierst. Aber nein, Du hast das
alles komplett ignoriert.
Da kommt für mich natürlich kein Gefühl von "Zusammenarbeit" auf. :-(
> Falls Du das so gemacht hast, dass> die App mit einem anderen HAL auch auf einem M1284p, M328 oder> STM32F103C8T6 läuft, kann ich das übernehmen.
Nein, für den ATmega habe ich da keinen Gehirnschmalz verschwendet. Wie
ich schon mehrfach erwähnt habe, ist der ATmega für mich nicht
interessant. Ich werde mir bestimmt nicht mehrere Uhren hier hinhängen
mit zig verschiedenen µCs. AVR-Entwicklung mache ich schon seit 7
Jahren, die Dinger bringen mich nicht mehr weiter. Deshalb bin ich auf
STM32 umgestiegen und habe Spaß dabei.
> @Alle: Besteht denn überhaupt interesse an (zumindest weitgehend)> gemeinsamen Code, unabhängig von der verwendeten Hardware?
Ich halte dies für Kräfteverschwendung, mehrere µC-Welten mit einem
Source unter einem Hut zu bringen. Sind es Libraries, dann ja. IRMP
läuft auch auf AVR, PIC, STM32 und XMC. Aber für ein konkretes Projekt?
Nein, da werden Ressourcen verschwendet.
Man könnte natürlich eine WS2812-Lib schreiben, die µC-übergreifend
funktioniert. Aber daran habe ich persönlich kein Interesse.
> Wegen mir nicht, ich übernehme gern die Version mit "nur eine Farbe> gleichzeitig".
Okay. Die Version ist schon seit einer Woche online im Artikel.
> Hmmm. Für mich besteht im Moment kein Grund, auf einen teureren Nucleo> umzustellen. Ich meine nicht, weil der ein paar € mehr kostet, aber die> Umstellung allein kostet ja auch Arbeit.
Der Nucleo kostet unter 12 EUR. Wenn man jetzt 1000 Uhren in Serie bauen
will, dann ist es natürlich sinnvoll, ein paar Euro zu sparen. Wenn man
aber nur 1, 2 oder 3 Stück davon baut, ist es vollkommen Latte, ob man
für das Board 4 EUR oder 20 EUR ausgibt. Im Verhältnis zu den
Entwicklungs- und Erstellungskosten sind die 10 EUR Unterschied Peanuts.
Eine Verwendung von irgendwelchen China-Modulen, die es in 2 Monaten so
nicht mehr geben wird oder auf die man 4 Wochen warten muss, nur damit
man 10 Euro spart für eine einzelne Uhr, die man baut, ist Unsinn.
Ausserdem bekommt man die China-Boards doch nur so günstig, wenn man die
im 4er oder 5er-Pack kauft? Was soll denn Otto-Normal-Verbraucher mit
den restlichen 3-4 Stück, wenn er doch nur eine Uhr will? Willst Du dann
eines Deiner Module hinschicken, wo der Versand alleine schon wieder die
Ersparnis auffrisst?
> Wenn ich das richtig sehe, sind wir beim STM32 im Moment zu Zweit und Du> würdest die Discovery-Version übernehmen.
"Übernehmen" ist gut ;-)
Bis auf das EEPROM zum Speichern der User-Konfiguration und Anbindung
der RTC bin ich bereits so gut wie fertig. Da warte ich nur noch auf das
eine Modul. Sobald das Modul hier reinflattert, ist ein paar Stunden
später die Software dafür auch fertig.
Bereits umgesetzt ist:
- Anbindung IR-Fernbedienung mittels [IRMP]]
- Einstellen des Anzeigemodus ("Sprache") per IR-FB
- Einstellung der Farbe mit IR-Fernbedienung
- Anbindung LED-Stripes WS2812
- Sanftes Überblenden der Uhrzeiten auf den LEDs
- Anbindung DCF77 Modul
- Anbindung ESP8266 mit Holen der Uhrzeit
Was ich noch geplant habe:
- Speichern aller Einstellungen in externem EEPROM
- Anbindung der DS3231-RTC
- Farbprogramme (Wählen der Farbe, optional automatisches Wechseln)
- Android-App zum Fernsteuern der Uhr per WLAN
> Das würde jedenfalls Sinn machen.
Bei der Formulierung "würde" krieg ich das Kotzen. Ich bin bis jetzt der
EINZIGE, der an der STM32-Version arbeitet und bereits Zwischenstände
der Software-Entwicklung gepostet hat. Während Du noch hin- und
herplanst, habe ich das schon längst veröffentlich.
Und da bis heute KEINE Erklärung Deinerseits kam, was Du von den damals
vorgestellten Punkten übernehmen willst, mache ich den Rest auch noch
selber. Ich habe da auch keine Lust mehr, mir auf den letzten zehn
Metern noch reinreden zu lassen.
Joachim oder/und Du, Ihr könnt gerne Teile meiner Software für Eure
China-Teile übernehmen. Damit habe ich überhaupt kein Problem, da ich
sowieso alles unter GPL stellen werde. Aber ich werde nicht warten, bis
Ihr mal aus den Hufen kommt.
@Frank & alle Leidensgenossen ;)
wg. Software, i bin kein 'Klammerprogrammierer' sprich C,
daher kann i dort in der Soft nicht 'mitspielen'......
vlG
Charly
Frank M. schrieb:> Du hast da noch nichtmals einmal reingeschaut, sondern> alles geflissentlich ignoriert.
Ich war gedanklich halt bei anderen Baustellen: Code-Generator,
LED-Display-Module, ESP8266, Buck-Wanlder, ...
Es geht halt nicht immer alles gleichzeitig.
Ich habe da eine andere Strategie: Nicht einfach umsetzen, sondern immer
parallel schreiben, was man gerade wie plant umzusetzen. Ich habe die
Hoffnung, dass es mir dadurch nicht wie Dir geht.
Dass Du bei Deiner Strategie auf unerfüllte Erwartungen stößt, verstehe
ich.
An einigen Stellen hast Du mich falsch verstanden. Ich schrieb ja z.B.:
"Ich meine nicht, weil der ein paar € mehr kostet", sondern wegen "Pferd
im laufenden Rennen wechseln"^^. Vom Preis bei 1000 Uhren war nie die
Rede. Daher ist auch ein Umstieg von Disco auf Nucleo wohl nicht nötig
und ich brauche kein Nucleo bestellen.
Charly B. schrieb:> daher kann i dort in der Soft nicht 'mitspielen'......
Gut zu wissen, alles klar. :-)
Torsten C. schrieb:> Ich hab gestern den ersten HTTP-Request per ESP8266 beantwortet. Ich> mache erstmal an dieser Baustelle weiter.
fein fein, da muss ich noch hin falls ich keinen Code sehe.
Frank M. schrieb:> Ich habe hier mehrmals die Zwischenstände> der STM32-Entwicklung gepostetFrank M. schrieb:> Deshalb bin ich auf> STM32 umgestiegen und habe Spaß dabei.Frank M. schrieb:> Der Nucleo kostet unter 12 EURFrank M. schrieb:> Da kommt für mich natürlich kein Gefühl von "Zusammenarbeit" auf.
wie auch?
ich werde nicht umsteigen, mir reichen meine Baustellen
Torsten C. schrieb:> Es geht halt nicht immer alles gleichzeitig.
eben drum war es eine große Hilfe das ich mich nicht noch um die
Frontplatten kümmern muss, ich denke die "holprige" Zusammenarbeit kann
trotzdem funktionieren, für uns Atmel, für Frank STM, gemeinsam haben
wir wohl die Stripes und die Frontplatten und so profitieren alle doch
irgendwie.
Ich bin froh das mein erster mighty m1284p läuft, nun wird der Code
Stück für Stück in Betrieb genommen ohne Platzsorgen und ich muss auch
bei der selbstgestrickten keinen Fehler suchen (soft oder hard, keine
Ahnung wird sich zeigen, bis jetzt läuft der mighty genau wie er soll)
Torsten C. schrieb:> Herbert P. schrieb:>> mit TCL5940 eher Atmel>> Also zwei Colorduinos mit monochromen LEDs gefällt Dir nicht?
Mit einer Daisy Chain aus TLC5940 Schieberegistern, die zwischen den
LEDs verteilt sitzen, habe ich zu den einzelnen LEDs relativ kurze Wege.
Da die TLC5940 auch PWM können, wäre das Ansteuerungsprinzip also nahezu
identisch mit dem der WS2812 Stripes, halt nur monochrom. Oder
unterliege ich da einem Trugschluss?
Den Colorduino hab ich bisher immer mit einer 8x8 RGB Matrix in
Verbindung gebracht. Wie meinst Du das mit den 2 Colorduinos?
@Frank & Torsten, "Discovery Board oder Nucleo":
Es spricht grundsätzlich nichts gegen das Discovery Board, außer dass
die Bauhöhe im Originalzustand mit der Steckerleiste und den Jumpern an
der Unterseite zu hoch für eine Gehäusetiefe von 2,5 cm ist.
Man müsste entweder das Gehäuse 3 - 3,5 cm tief machen (was aber das
Gesamtbild beeinträchtigen würde), oder die Steckerleiste und die Jumper
auf dem Disco-Board von unten nach oben löten (was ohne
Vakuum-Entlötkolben eine Sisyphusarbeit wäre und man möglicherweise auch
mit einer Beschädigung von Leiterbahnen und Durchkontaktierungen rechnen
müsste).
Der gangbarste Weg wäre wohl, dass man für das Disco-Board eine
Vertiefung von ca. 1 cm in die MDF-Platte fräst bzw. fräsen lässt.
Zwischen der LED-Matrix und dem Gehäuserahmen aus Alu-Profil bleibt ein
7 cm breiter Rand, wo das nicht ganz 7 cm breite Disco-Board schön Platz
hätte.
Torsten C. schrieb:> Daher ist auch ein Umstieg von Disco auf Nucleo wohl nicht nötig> und ich brauche kein Nucleo bestellen.
Für mich ist der Umstieg auch nicht unbedingt notwendig. Ich mache das
nur, um Herberts "Anforderung", die Schaltung sollte nicht dicker als
2,5cm werden, damit sie noch hinter die Frontplatte passt, zu erfüllen.
Ich halte diese Anforderung für sinnvoll, da damit die Akzeptanz der
User steigen wird.
Herbert P. schrieb:> Der gangbarste Weg wäre wohl, dass man für das Disco-Board eine> Vertiefung von ca. 1 cm in die MDF-Platte fräst bzw. fräsen lässt.
Hast Du Dir mal den Zwischenboden der bisherigen Word Clock in
diesem Forum angesehen?
Hier nochmal der Link:
http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung
Selbstverständlich kommt da eine Vertiefung rein, nämlich ein großes
Loch - so groß, dass das Nucleo-Board und die Peripherie Platz haben
wird.
Der Zwischenboden für die WordClock24h kann etwas flacher werden, weil
die Buchstaben kleiner sind. Hauptsache, der 120°-Winkel der LEDs
beleuchtet den kompletten Buchstaben.
> Zwischen der LED-Matrix und dem Gehäuserahmen aus Alu-Profil bleibt ein> 7 cm breiter Rand, wo das nicht ganz 7 cm breite Disco-Board schön Platz> hätte.
Das Nucleo-Board ist flacher als das Disco-Board, denn man kann auf der
Rückseite einfach die überstehenden Pins abpitschen. Du brauchst keine
Steckleisten umzulöten. Ausserdem hat es (wie das Disco-Board auch)
einen ST-Link Programmier-Anschluss - ist also für jedermann mit einem
USB-Kabel "ready to use". Kleiner ist es auch noch.
Ich sage Bescheid, wenn die bisherige Software portiert ist. Erstmal
mache ich mit dem Disco-Board weiter.
Frank M. schrieb:> Ich halte diese Anforderung für sinnvoll, da damit die Akzeptanz der> User steigen wird.
Die Akzeptanz der User wird wohl auch und in erster Linie durch die Wahl
des µC beeinflusst, und da hat vermutlich die Atmel-Familie mehr Fans
als die STM32 Familie. Daran kommen wir nicht vorbei. Aber wenn ich das
falsch sehe, bitte ich um Berichtigung.
Herbert P. schrieb:> und da hat vermutlich die Atmel-Familie mehr Fans> als die STM32 Familie. Daran kommen wir nicht vorbei.
müssen wir denn?
hier sind welche die am Atmel arbeiten, Frank an seinem STM sind doch
alle bedient?
oder was verstehe ich grad nicht?
Meine Aussage bezog sich auf die Wichtigkeit der Gehäusetiefe als
Entscheidungskriterium für Nachbauer, die aber meines Erachtens
gegenüber der Wahl des Controllers eine eher untergeordnete Rolle
spielt.
Torsten C. schrieb:> Torsten C. schrieb:>> Ich hab gestern den ersten HTTP-Request per ESP8266 beantwortet. Ich>> mache erstmal an dieser Baustelle weiter.>> Hmmm, statt HTML "schön" zu machen, könnte ich auch erstmal JSON fertig> machen, für http://{host}:{port}{command}, siehe>> http://netio.davideickhoff.de>> Was meint Ihr?
Mir ist im Augenblick der praktische Nutzen im Zusammenhang mit der
Wortuhr nicht klar. Da ich nicht vorhabe, unsere Haustechnik zu
vernetzen, wird bei mir auch die Wortuhr - wenn überhaupt - lediglich
einseitig über WLAN kommunizieren, nämlich indem sie bei Versagen des
DCF-Empfängers die Uhrzeit mit der Internet-Echtzeit synchronisiert
(sofern überhaupt ein WLAN Zugang zum Internet verfügbar ist).
Meine Meinung dazu: ich denke, dass das eine ganz interessante
Aufgabenstellung ist, aber mit unserer Wortuhr - wenn überhaupt - nur am
Rande zu tun hat und eigentlich ein eigenes Projekt darstellt.
Herbert P. schrieb:> Meine Meinung dazu: ich denke, dass das eine ganz interessante> Aufgabenstellung ist, aber mit unserer Wortuhr - wenn überhaupt - nur am> Rande zu tun hat
Darum frage ich ja. Gut, OK. Da ich für die Uhr keine IR-Fernbedienung
anschaffen will und lieber per NetIO steuere, geht das bei mir halt
nicht anders.
Joachim B. schrieb:> fein fein, da muss ich noch hin falls ich keinen Code sehe.
Was kannst Du davon gebrauchen? Browser-HTML oder NetIO-JSON? Oder
eigentlich auch keins von Beidem?
Torsten C. schrieb:> Joachim B. schrieb:>> fein fein, da muss ich noch hin falls ich keinen Code sehe.>> Was kannst Du davon gebrauchen? Browser-HTML oder NetIO-JSON? Oder> eigentlich auch keins von Beidem?
na mit dem ESP8266 nur per NTP die Zeit zu erhalten
DCF77 ist hier echt dünne und da ich Speicher satt habe und 5x ESP8266
wäre es schön wenn ich das sofort testen kann.
Torsten C. schrieb:> Darum frage ich ja. Gut, OK. Da ich für die Uhr keine IR-Fernbedienung> anschaffen will und lieber per NetIO steuere, geht das bei mir halt> nicht anders.
Du brauchst Dir keine "anzuschaffen". IRMP "versteht" 95% aller im
Haushalt befindlichen IR-FBs. Nimm halt irgendeine, die noch rumliegt.
Anlernen, fertig.
Joachim B. schrieb:> na mit dem ESP8266 nur per NTP die Zeit zu erhalten
Die Routinen dafür, die ich geschrieben habe, sind µC-unabhängig.
Sie benötigen lediglich zwei Funktionen:
(void) uart_putchar (uint8_t ch);
und
uint8_t uart_poll (uint8_t * ch);
Letztere liefert 1 zurück, wenn ein Zeichen am Uart anliegt. Dieses muss
die Funktion über den Pointer speichern.
Der Rest ist pures C. Am Ende hast Du Datum und Uhrzeit.
Joachim B. schrieb:>> na mit dem ESP8266 nur per NTP die Zeit zu erhalten>
Das ist selbstverständlich auch für alle anderen interessant. aber wenn
ich Dich richtig verstanden habe, Torsten, dann geht ja Dein NetIO-JSON
Projekt wesentlich darüber hinaus? Oder willst Du nur die Uhr damit
stellen?
Frank M. schrieb:> Die Routinen dafür, die ich geschrieben habe, sind µC-unabhängig.>> Sie benötigen lediglich zwei Funktionen:>> (void) uart_putchar (uint8_t ch);> und> uint8_t uart_poll (uint8_t * ch);
wie bringt man mich zum bellen?
wowowowo? :-)
Herbert P. schrieb:> Oder willst Du nur die Uhr damit stellen?
Auch, aber das hat Frank ja schon fertig, da muss ich nicht versuchen,
was besser zu machen.
Frank M. schrieb:> Du brauchst Dir keine "anzuschaffen". IRMP "versteht" 95% aller im> Haushalt befindlichen IR-FBs.
War klar, dass das kommt. ;-) "Keine IR-Fernbedienung anschaffen" war
verkürzt ausgedrückt: Ich will sowieso alle IR-Fernbedienungen, die aus
meiner Sicht durchweg nicht ordentlich funktionieren, durch NetIO oder
Ähnliches ersetzen und werde mir mit der WordClock keine neuen
Baustellen einfangen.
Dein eigener Beitrag "Remote IRMP - IR übers Netzwerk"
Frage an die Hardcore-Programmierer:
Interrupts (z.B. vom USART: DMA-Buffer halb voll) soll man ja
grundsätzlich so kurz wie möglich halten. Aber falls die App in der
Mailoop zu lange den µC blockiert, dann kann z.B. der RX-Puffer
überlaufen.
Man könnte eine Art "Betriebssystem" einsetzten, um das zu umgehen.
Wollen wir eins nutzen?
Alternativ kann ich im HAL (Hardware Abstraction Layer) z.B. per Timer
im niedrig prioren Interrupt regelmäßig die Ausführung unterbrechen und
ggf. einen Überlauf verhindern, indem ich hier den RX-Puffer bearbeite.
Man könnte auch - und das wäre wohl einfacher - in der App an geeigneten
Stellen ein HAL_DoEvents() vorschreiben. Wie sollte ich das umsetzen?
PS Hintergrund: Ein HTTP-Request wird vom ESP8266 zwar immer in 1024
Byte-Chunks zerlegt (s. z.B. Anlage), kann aber beliebig lang werden.
Dabei soll es ja keinen "Bluescreen" geben.
Neue Version 0.5 der STM32-Variante ist online im Artikel:
http://www.mikrocontroller.net/articles/WordClock24h#STM32F4_Discovery_Projekt
Neuigkeiten:
- Unterstützung von DCF77-Modulen
- Unterstützung von ESP8266-WLAN-Modulen
- Diverse Bugfixes
Die Uhrzeit wird - wenn DCF77 konfiguriert - kontinuierlich ausgelesen
und neu gesetzt, wenn eine Zeit empfangen wurde. Ausserdem wird die
aktuelle Zeit einmal pro Stunde von einem Time Server geholt, wenn das
ESP8266-Modul aktiviert wurde, siehe Anmerkungen im Artikel. Eine
Aktualisierung kann auch per IR-Fernbedienung oder MCURSES-Monitor
über die Taste 'n' manuell angestoßen werden.
Damit ist die Uhr nun komplett lauffähig:
- Uhr läuft jetzt in Real Time, benutzt dafür einen STM32-Timer
- LED-Anzeige läuft mit sanften Übergängen
- Uhrzeiten, Anzeigemodi, Helligkeiten und Farben
können per IR-Fernbedienung eingestellt werden
- Uhrzeiten werden optional über DCF77/ESP8266 aktualisiert
Als nächstes kommt noch die Anbindung von EEPROM und RTC, damit die
Uhrzeit und sämtliche Einstellungen auch nach einem Poweroff sofort
wieder da sind.
Ich habe das Projekt auf EM:Blocks umgestellt. Diese IDE ist wesentlich
einfacher zu installieren, ist dabei nicht nur schneller, sondern auch
stabiler und unterstützt viel mehr STM32-µCs als die CooCox-IDE - unter
anderem auch den STM32-F401RE, der auf dem Nucleo-Board sitzt.
Die aktuelle Version läuft aber (noch) auf dem STM32F4 Discovery Board.
Die Software-Dokumentation im Artikel habe ich angepasst und erweitert.
Hier ist nun u.a. auch beschrieben, wie man das DCF77-Modul oder/und das
ESP8266-WLAN-Modul aktivieren kann. Bitte vorher lesen.
@Joachim:
Du kannst den esp8266-Code an den ATMEGA anpassen, indem Du
folgendermaßen vorgehst:
- Anmerkungen zum ESP8266 im Artikel lesen. ;-)
- Änderungen esp8266.c:
- Das include von "../wclock24-config.h" entfernen
- Die #defines für UART2 des Disco-Board rauslöschen (alle oben)
- Ein #undef USE_MCURSES_MONITOR stattdessen einfügen
oder alle MCURSES-Passagen komplett rauswerfen.
Diese sind lediglich fürs Debugging/Monitoring drin.
Du musst anschließend folgende Funktionen implementieren:
- uart_init()
- uart_putc()
- uart_poll()
Ausserdem musst Du alle 10 msec die Funktion esp8266_ISR() aufrufen.
Diese wird für Timeouts benötigt.
Dies kannst Du einbauen in die Timer-ISR, die Du sowieso für IRMP
brauchst. Da schreibst Du:
1
staticuint16_tnet_time_cnt;
2
3
irmp_ISR();
4
5
net_time_cnt++;
6
7
if(net_time_cnt==F_INTERRUPTS/100)// call esp8266_ISR() every 1/100 of a second
8
{
9
esp8266_ISR();
10
net_time_cnt=0;
11
}
Siehe auch main.c des Disco-Projekts.
Wo es noch Probleme bei der Portierung auf AVR geben könnte: Ich
verwende die Funktionen stricmp() statt strcmp(), weil das Modul
Fehlermeldungen uneinheitlich ausgibt: Mal Groß-, mal Kleinbuchstaben
oder auch gemischt - je nach Lust und Laune. Ausserdem benötigst Du
localtime(), um den Zeitstempel in eine "echte" Uhrzeit umzurechnen.
Gerade bei letzterer bin ich mir nicht sicher, ob sie in der AVR-libc
vorhanden ist. Beim STM32 gibt es sie selbstverständlich.
Es wäre von Vorteil, wenn Du für den UART-Eingang einen ISR-unterstüzten
Ringbuffer implementierst, um keine Zeichen zu verlieren. So einen
findest Du für den ATMega im MCURSES-Source.
Wenn Du Probleme hast, melde Dich.
Hallo Herbert,
Herbert P. schrieb:> Die Akzeptanz der User wird wohl auch und in erster Linie durch die Wahl> des µC beeinflusst, und da hat vermutlich die Atmel-Familie mehr Fans> als die STM32 Familie. Daran kommen wir nicht vorbei. Aber wenn ich das> falsch sehe, bitte ich um Berichtigung.
50% derjenigen Bastler, welche die bereits bestehende Word Clock
bauen wollen, bitten bei der Sammelbestellung direkt auch um Zusendung
eines fertig programmierten ATmegas zusammen mit der Steuerplatine.
Der Grund ist einfach: Die Hälfte der User programmieren überhaupt
keinen Mikrocontroller. Die wollen einfach nur die Uhr, der µC ist denen
vollkommen egal.
Frank M. schrieb:> bitten bei der Sammelbestellung direkt auch um Zusendung> eines fertig programmierten ATmegas zusammen mit der Steuerplatine.>> Der Grund ist einfach: Die Hälfte der User programmieren überhaupt> keinen Mikrocontroller.
ein Grund mehr das Design auf Arduino (nano328p) umzustellen, ich denke
ja mit dem wird die Schnitte gleich mitgeliefert und jeder könnte
selber....
aber egal ich schicke dir mal ne PN
Frank M. schrieb:> @Joachim:> Wenn Du Probleme hast, melde Dich.
Joachim B. schrieb:> ein Grund mehr das Design auf Arduino (nano328p) umzustellen, ich denke> ja mit dem wird die Schnitte gleich mitgeliefert und jeder könnte> selber....
Eben. Genauso ist es mit dem STM32-Disco oder Nucleo-Board. Die
Programmer-Schnittstelle ist schon dabei. Man muss nur ein
Mini-USB-Kabel einstöpseln. Einfacher geht's nicht.
Joachim B. schrieb:> aber egal ich schicke dir mal ne PN
Habe Dir per E-Mail geantwortet - wie auch beim letzten Mal, wo Du die
Mail offenbar noch vermisst.
Frank M. schrieb:> Eben. Genauso ist es mit dem STM32-Disco oder Nucleo-Board. Die> Programmer-Schnittstelle ist schon dabei. Man muss nur ein> Mini-USB-Kabel einstöpseln. Einfacher geht's nicht.
Es ist halt so, dass der Arduino doch etlichen technisch interessierten
Bastlern ein Begriff und ein wenig bekannt ist, während der STM32 wohl
für die meisten Hobby-Bastler Neuland bedeutet. Ich würde den Arduino
samt den verschiedenen Shields, die dafür angeboten werden, und den
Programmiersprachen Sketch und BasCom als eine Art Technik-Lego für
große Jungs bezeichnen. Der STM32 dagegen erhebt schon professionellere
Ansprüche, und es ist nicht Jedermann's Sache, hobbymäßig so tief in die
Materie hineinzusteigen und dafür auch noch C zu lernen.
Ich hab mir jetzt einmal vorsorglich zu meinen Arduinos einen m1284, ein
STM32 Discovery Board und ca. 4 kg Literatur über Mikrocontroller, C und
C++ beschafft und versuche, hier wenigstens einigermaßen mehr als nur
"Bahnhof" zu verstehen. Mal sehen, ob ich - wenn überhaupt - meine erste
Wortuhr eher mit dem m1284 oder mit dem STM32 zum Laufen bekomme. Leider
kann ich im Augenblick wenig Zeit dafür aufbringen. Aber immerhin habe
ich Blut geleckt, und das ist ja schon einmal etwas.
Frank M. schrieb:>> aber egal ich schicke dir mal ne PN>> Habe Dir per E-Mail geantwortet - wie auch beim letzten Mal, wo Du die> Mail offenbar noch vermisst.
die letzte kam an, die vorige ist weiterhin verschollen.
Frontplatten für Prototypen:
Ich habe gestern ein privates Angebot für geplottete Vinylfolien (auch
Einzelstücke) für die Frontplatte bekommen. Der Preis ist verhandelbar.
Kann mir bitte jemand sagen, was ein annehmbarer Preis wäre?
Außerdem habe ich ein Angebot für Acrylfrontplatten, die mit
lichtundurchlässigem Lack beschichtet sind und wo die Buchstaben per
Lasertechnologie aus der Farbschicht ausgebrannt werden. Preis um die €
50,-/ Stück.
Bei Interesse bitte PN an mich!
Ich wünsche allen Mitstreitern ein frohes Weihnachtsfest!
Herbert
Herbert P. schrieb:> Außerdem habe ich ein Angebot für Acrylfrontplatten, die mit> lichtundurchlässigem Lack beschichtet sind und wo die Buchstaben per> Lasertechnologie aus der Farbschicht ausgebrannt werden. Preis um die €> 50,-/ Stück.
Da sind die 38 EUR, die ich anbieten kann, aber günstiger.
Herbert P. schrieb:> Es ist halt so, dass der Arduino doch etlichen technisch interessierten> Bastlern ein Begriff und ein wenig bekannt ist, während der STM32 wohl> für die meisten Hobby-Bastler Neuland bedeutet.
Wie gesagt: Der Hälfte ist es egal, welcher µC das ist. Hauptsache, es
läuft.
> Ich würde den Arduino> samt den verschiedenen Shields, die dafür angeboten werden, und den> Programmiersprachen Sketch und BasCom als eine Art Technik-Lego für> große Jungs bezeichnen. Der STM32 dagegen erhebt schon professionellere> Ansprüche, und es ist nicht Jedermann's Sache, hobbymäßig so tief in die> Materie hineinzusteigen und dafür auch noch C zu lernen.
Du brauchst weder C zu können noch eine IDE installieren. Auch braucht
man nicht in die Materie "hineinzusteigen". Du brauchst nur die
Hex-Datei per USB-Kabel zu flashen. Fertige Hex-Dateien kann man ja im
Artikel hinterlegen, fertig.
Ausserdem wirst Du mit dem Arduino nicht alle Features umsetzen können,
was mit dem STM32 drin ist.
Fröhliche Weihnachten!
Frank M. schrieb:> Ausserdem wirst Du mit dem Arduino nicht alle Features umsetzen können,> was mit dem STM32 drin ist.
welche denn?
hast du noch mal nach der verschollenen PN geschaut?
Frank M. schrieb:> Da sind die 38 EUR, die ich anbieten kann, aber günstiger.
Siebdruck - wie von Dir angeboten - ist ja ohnehin das erste Mittel der
Wahl. Ich hab' das hier nur gepostet, falls jemand individuelle WÜnsche
hat, oder vorab einen Prototypen bauen möchte.
Joachim B. schrieb:> Frank M. schrieb:>> Ausserdem wirst Du mit dem Arduino nicht alle Features umsetzen können,>> was mit dem STM32 drin ist.>> welche denn?
Warten wir's einfach ab, okay ;-)
> hast du noch mal nach der verschollenen PN geschaut?
Gerade nochmal auf den Weg geschickt.
Frank M. schrieb:>> Frank M. schrieb:>>> Ausserdem wirst Du mit dem Arduino nicht alle Features umsetzen können,>>> was mit dem STM32 drin ist.
Tja, mein Problem wird sein, das Ganze für meinen Bedarf abzuspecken.
Ich brauche keine WLAN-Anbindung (es muss doch eine vernünftige, präzise
RTC geben, die nicht um Minuten pro Woche falsch geht?!), keine
Überblendeffekte und eigentlich auch keine Farbspiele. Einfach nur
warmweiß, auch die Dimmmöglichkeiten sollen sich auf ein Minimum
beschränken.
Herbert P. schrieb:> es muss doch eine vernünftige, präzise> RTC geben, die nicht um Minuten pro Woche falsch geht
Wäre es denn eine Option, einen "Korrektur-Faktor" konfigurierbar zu
gestalten? So ähnlich wie beim verstellbaren Ziehkondensator in einer
Quarzuhr könnte man dann die Uhr kalibrieren. Dann würde z.B. die letzte
Sekunde einer Stunde ein paar Millisekunden länger oder kürzer werden.
Da ich im STM vorerst die eingebaute RTC nehme, werde ich das wohl
erstmal eh so machen.