Ambilight mit STM32F4discovery und TVP5150AM1

OP #3685458
Lesenswert?

Armin schrieb:
> Hat der STM noch genügend Reserven einen Mittelwert übers ganze Bild zu
> rechen? Was haltet ihr von der Idee?

Für die Mittelwerbestimmung sollten genügend Reserven vorhanden sein, am 
einfachsten lässt sich das in der vorhandenen Berechnung der 4 Kanten 
unterbringen. Da wird sowieso schon Mittelwert, Min und Max berechnet.
Gast #3696876
Lesenswert?

Leider verstehe ich das Ganze noch nicht komplett. Kann mir bitte jemand 
meine Denkfehler nennen und auf die Sprünge helfen?

Zuerst mal die Grundlagen:
Ein kompletter Frame hat 720 x 576 Pixel und wird als zwei Halbbilder 
übertragen (also nacheinander zwei mal 720 x 288 Pixel)
Zwei nebeneinander liegende Pixel werden im Format <Cb><y1><Cr><y2> 
übertragen => 4 Bytes für 2 Pixel
(720 Pixel / 2 ) * 4Bytes = 1440Bytes Nutzdaten pro Zeile
Dazu kommt der Overhead (Front porch = 20 bytes, sync width = 128 bytes, 
back porch = 140 bytes) = 1728 Bytes Gesamt pro Zeile
soweit einigermaßen klar
Zu den Zeilen steht im Code „625 Zeilen pro Frame“ und „front porch = 
2.5 lines, sync width = 6 lines, back porch = 15 lines“ – da komme ich 
nicht drauf. Und was soll denn das mit den halben Zeilen??


Zur Analyse der Daten:

In der TVP5150startCapture() wird der Crop Bereich auf die linke 
Bildhälfte gesetzt.

DCMI_Crop.DCMI_CaptureCount = captureWidth - 1; //668-1 bedeutet 667 
Bytes oder Pixel????
DCMI_Crop.DCMI_HorizontalOffsetCount = cropLeft; //168 Overhead am 
Anfang der Zeile?
DCMI_Crop.DCMI_VerticalLineCount = cropHeight - 1; //274-1 Anzahl der 
Zeilen???
DCMI_Crop.DCMI_VerticalStartLine = cropTop; //20 Zeilen Overhead am 
Anfang des Frames?

Vermutlich wird da jetzt der Bereich auf die linke Hälfte (334 Pixel) 
des ersten Halbbildes (nur 273 Zeilen) beschnitten oder wie?

Nach jeder (halben) Zeile wird DMA2_Stream1_IRQHandler() aufgeführt.
Hier werden die Daten von YCbCr_buf [] zu den bereits vorhandenen in 
YCbCrSlots[] addiert


Der DCMI_IRQHandler() wird immer ausgelöst wenn ein Halbbild komplett 
übertragen wurde.
Zuerst wird der CROP-Bereich auf die rechte Seite gestellt, bzw. eben 
auf die Seite die zuvor nicht aktiv war.


Soviel fürs erste und vorab schon mal Danke fürs helfen.
OP #3697298
Lesenswert?

Michael schrieb:
> Zu den Zeilen steht im Code „625 Zeilen pro Frame“ und „front porch =
> 2.5 lines, sync width = 6 lines, back porch = 15 lines“ – da komme ich
> nicht drauf. Und was soll denn das mit den halben Zeilen??

Die 625 Zeilen werden als 2 Halbbilder zu 312.5 lines gesendet. Damit 
die Zeilen versetzt am Bildschirm erscheinen, wird mit 1/2 Zeile Versatz 
gearbeitet. Nach den 288 Bildzeilen eines Frames kommen demnach 24.5 
Zeilen V-Sync.

> DCMI_Crop.DCMI_CaptureCount = captureWidth - 1; //668-1 bedeutet 667
> Bytes oder Pixel????
> DCMI_Crop.DCMI_HorizontalOffsetCount = cropLeft; //168 Overhead am
> Anfang der Zeile?
> DCMI_Crop.DCMI_VerticalLineCount = cropHeight - 1; //274-1 Anzahl der
> Zeilen???
> DCMI_Crop.DCMI_VerticalStartLine = cropTop; //20 Zeilen Overhead am
> Anfang des Frames?

Das DCMI interface benötigt 0-basierte Werte, d.h. ein CaptureCount von 
667 heißt, dass 668 byte übertragen werden. Die angegebenen Werte des 
Crop-Windows sind spezielle Werte für meinen Philips Fernseher. Da ein 
konkreter Fernseher nicht das gesamte 720x288 Bild zeigt, sondern an 
allen Seiten ein Stück innerhalb des Bildes beginnt (um schwarze Kanten 
zu vermeiden), beginnt das Crop-Window z.B. bei 168 und ist 668 byte (= 
334 pixel) lang.
Alle Crop-Werte sind ja individuell einstellbar und dmit auf jeden 
Fernseher zu justieren. Das Ambiligt soll ja z.B. die Farbe des linken 
sichtbaren Bereichs darstellen und nicht den theorethischen Anfang des 
PAL-Bildes, der ja weiter links vom sichtbaren Bereich liegen kann.

>
> Vermutlich wird da jetzt der Bereich auf die linke Hälfte (334 Pixel)
> des ersten Halbbildes (nur 273 Zeilen) beschnitten oder wie?

Genau, es wird in - und Y-Richtung aus o.g. Gründen beschnitten.

>
> Nach jeder (halben) Zeile wird DMA2_Stream1_IRQHandler() aufgeführt.
> Hier werden die Daten von YCbCr_buf [] zu den bereits vorhandenen in
> YCbCrSlots[] addiert
>
Genau so

>
> Der DCMI_IRQHandler() wird immer ausgelöst wenn ein Halbbild komplett
> übertragen wurde.
> Zuerst wird der CROP-Bereich auf die rechte Seite gestellt, bzw. eben
> auf die Seite die zuvor nicht aktiv war.
>
Korrekt
#3714875
Lesenswert?

Hallo, haben nun endlich alles aufgebaut und getestet. Die Kombination 
über Splitter und Konverter funktioniert fehlerfrei und ohne 
erkenntliche Bildverzögerung. Das Ambilight sieht spitze aus! Erstmal 
vielen Dank für die ganze Arbeit, die in dieses Projekt gesteckt wurde.

Mir ist nur etwas aufgefallen und wollte mal nachfragen, ob ihr eine 
Lösung wisst.
1. Der I2C-Kanal spinnt manchmal.
Nach fertiger Bestückung habe ich die Platine testweise ohne LEDs 
angesteckt mit dem Erfolg, dass der I2C Kanal gesponnen hat. Kein 
Clock-Signal sondern nur kurze Spikes im us-Bereich, in dem logisch 0 
angezeigt wird + irreguläres SDA Signal. Jetzt funktioniert es jedoch 
einwandfrei bei jedem Test. Was könnte da los gewesen sein? (Kontroller 
lieferte immer nur 0x00 im Protokoll)

2. Kurzweilige Konfigurationsänderungen. Manchmal wechselt der Status am 
Eingangssignal kurzfristig auf 0x00. Hier vermute ich wieder einen 
Spinner im I2C-Kanal. Daraus resultieren dann "Grüne" Bereiche im 
Ambilight, die jedoch sofort wieder verschwinden.

3. Wie genau sind jetzt die 4 LEDs am Discovery in Funktion? Meine grüne 
blinkt munter dauerhaft vor sich hin, die Orangene und Rote leuchten 
manchmal, aber nicht immer.

Hat jemand ähnliches beobachten können?

Gruß Bernhard

PS: Noch eine kurze Frage. Die 2 ersten WS2812B Leds auf der Oberseite 
meines Fernsehers sind ständig aus, jedoch nicht defekt, da das Signal 
ja weitergereicht wird. Wie geht das?
Gast #3714945
Lesenswert?

Wenn du das Layout der Platine nicht verändert hast, dann fehlt am I2C 
ein Pull-Up... guck auf den Schaltplan aus dem aller ersten Post.

Meine LEDs blinken/leuchten auch irgendwie alle. Da das AL funktioniert, 
habe ich da nicht weiter geforscht.

Danke nochmal für die Platinen!

Hat sich nach dem Splitter an der Bild Qualität irgendwas geändert (HD)? 
Kannst du bitte mal posten welchen du verwendest?
Habe vor den kompakten von Amazon für 25€ zu holen...

Gruß
#3714965
Lesenswert?

Hallo,
Selbst mit pullup sponn das signal, deswegen war ich ja so verwirrt.
Ich würde auch gern rausfinden wie denn nun die marke heißt. Ich habe 
ihn günstig auf ebay ersteigert ein 1 zu 8 (nein er ist nicht grade 
klein) splitter ohne marke ohne modellnummer.
Es steht nur folgendes auf dem Gehäuse:
High density series hdmi splitter
Und ein großes W mit der unterschrift Watermark
Habe leider keine infos zu dem teil gefunden. Habe keine nennenswerte 
unterschiede gesehen in der Bildqualität.
Gruß Bernhard
Gast #3717950
Lesenswert?

Bernhard Drescher schrieb:
> PS: Noch eine kurze Frage. Die 2 ersten WS2812B Leds auf der Oberseite
> meines Fernsehers sind ständig aus, jedoch nicht defekt, da das Signal
> ja weitergereicht wird. Wie geht das?

Das kommt mir irgendwie bekannt vor. Das habe ich schon häufiger im 
Zusammenhang mit den Stripes gelesen. Ich weiß nur nicht mehr, was der 
Grund und die Lösung war...
OP #3718071
Lesenswert?

Bernhard Drescher schrieb:
> 3. Wie genau sind jetzt die 4 LEDs am Discovery in Funktion? Meine grüne
> blinkt munter dauerhaft vor sich hin, die Orangene und Rote leuchten
> manchmal, aber nicht immer.

Ich sollte wirklich mal meine Doku fertig machen.
Bei der Entwicklung der Sortware dienten die LEDs als debug ports für 
Oszi-Messungen. Das ist immer noch drin und daher blinken die munter 
drauf los.
Die 4 LEDs werden wie folgt angesteuert:
   ROT     toggelt mit Hsync
   ORANGE  toggelt mit Vsync
   BLAU    toggelt mehrfach in der main() bei Aufruf diverser Funktionen
   GRÜN    toggelt mit Flanken vom IR-Decoder

Je mmehr Frün blinkt (ohne dass eine IR-Bedienung betätigt wird), desto 
mehr Störlicht scheint in der Umgebung zu sein. Rot, Orange und Blau 
sind eigentlich immer aktiv, auch wenn gar kein Signal anliegt. Das 
kommt daher, dass der TVP5150 so parametriet ist, dass er einen blauen 
Bildschirm zeigt, falls nichts ankommt. In dem Fall werden die Ambilight 
LEDs aber abgeschaltet (wird über den TVP-Status detektiert).

Bernhard Drescher schrieb:
> PS: Noch eine kurze Frage. Die 2 ersten WS2812B Leds auf der Oberseite
> meines Fernsehers sind ständig aus, jedoch nicht defekt, da das Signal
> ja weitergereicht wird. Wie geht das?

Was meinst du mit "die ersten 2 LEDs ..."? Sind die links oder rechts 
oder wo?
Gast #3718456
Lesenswert?

Bernhard Drescher schrieb:
> Habe mich da falsch ausgedrückt, die ersten beiden LEDs am oberen
> Strip,
> also LED nummer 30-31 ca. Deswegen finde ich es ja so komisch. Ein Crop
> fehler kann es nicht sein, da ja die LEDs der (von vorne) rechten Seite
> ein astreines Signal bekommen und auch mit dem Bildschirm über
> einstimmen. und auch die LEDs danach so funktionieren wie sie sollen.

Also oben rechts - sind die beiden komplett AUS (schwarz) oder glimmen 
sie?
#3718620
Lesenswert?

Komplett dunkel, nicht mal ein Leuchten. In dem von hagbard geposteten 
Link erwähnte einer abgelöste Bonds / thermische Probleme. Wenn ich am 
Wochenende wieder beim Fernseher bin, überprüf ich mal ob es vlt eins 
dieser Probleme ist. Software sollte ja nicht das Problem sein ;)

Ich erwarte übrigens noch 2 Rückmeldungen von Bachleitner und Kunze 
wegen den Platinen. Falls die Emails nicht ihr Ziel erreicht haben, 
erreiche ich euch vielleicht hier :)
Gast #3718859
Lesenswert?

Ich habe da mal einige Fragen:
Kann das Ambilight ohne die Fernbedienung betrieben werden, oder lässt 
es sich dann nicht einschalten?
Hat jemand eine Idee, wie ich das ohne originale FB zum Anlernen mit 
einer Harmony One hinbekomme?
Welche Art der Einspeisung für die LEDs empfehlt ihr für einen 42" TV?
Also wo an den Stripes, wie oft und was für ein Netzteil?
Danke!
Gast #3718969
Lesenswert?

Es wäre nicht schlecht, wenn man den Thread in Ruhe durchliest, damit 
erspart man sich einige Fragen (oder Strg+F) (dauert nicht lange)

hagbard schrieb:
> Ich habe da mal einige Fragen:
> Kann das Ambilight ohne die Fernbedienung betrieben werden, oder lässt
> es sich dann nicht einschalten?
Beitrag "Re: Ambilight mit STM32F4discovery und TVP5150AM1"
über blauen Knopf


> Hat jemand eine Idee, wie ich das ohne originale FB zum Anlernen mit
> einer Harmony One hinbekomme?
Musst die verwendete FB auf deine Harmony anlernen, oder ...
nutze die serielle Verbindung über Micro-USB-Schnittstelle
Beitrag "Re: Ambilight mit STM32F4discovery und TVP5150AM1"


> Welche Art der Einspeisung für die LEDs empfehlt ihr für einen 42" TV?
Beitrag "Re: Ambilight mit STM32F4discovery und TVP5150AM1" ist bei mir so 
installiert (46")


> Also wo an den Stripes, wie oft und was für ein Netzteil?
Eine RGB-LED (von mir gemessen: alle Farben voll ausgesteuert, bei 5m, 
150 LEDs, doppelte Einspeisung) zieht etwa 28mA-30mA -> rechne es dir 
aus
hier ein Anhaltspunkt -> http://www.keiang.de/Content-pid-56.html


> Danke!
Gast #3722712
Lesenswert?

Guten Tag,

ist es viel Aufwand, den Dateneinspeisepunkt auf die andere Seite zu 
verlegen oder sogar einstelltbar zu machen?
Momentan ist er bei normaler Draufsicht aufs TV unten rechts.
Das Programm muss ja wissen, wo der 1. Pixel sitzt, also kann man es 
nicht einfach anders aufbauen.
Ich habe nicht in den Code geguckt, da ich mir das momentan nicht 
zutraue, daher frage ich einfach mal.
Gruß und Dank
Dieter
Gast #3722848
Lesenswert?

Hm. Das war aber nicht die Frage. Ich hab verstanden wie rum es momentan 
sein soll. Ich hätte es aber gerne andersherum... Ist halt einfach eine 
Frage, auf welcher Seite des Fernsehers mehr Platz ist.
Gast #3732556
Lesenswert?

Hallo,

ich habe mein Ambilight nun auch endlich aufgebaut und angeschlossen.
Die Erweiterungsplatine habe ich von Bernhard.
LED Anschlussschema nach Keiang wie hier schon genannt. Auf der langen 
Seite 54 und auf der kurzen Seite 30 LEDs. Hab es über das USB Terminal 
auch eingestellt.
Im Moodlight gehen alle LEDs.
Im Ambilight gehen folgende LEDs nicht:
Obere Reihe in Datenrichtung LEDs 1-3 und 31-34.
Untere Reihe in Datenrichtung LED 7 und 34-37.

Hat jemand eine Idee dazu?
An PB8 habe ich auf der Erweiterungsplatine noch einen 4k7 Pullup fürs 
I2C angelötet. Das sollte es also nicht sein.

Und wie stelle ich z.B. Brightness über die FB ein?
White und dann Brighness Up/Down funktioniert bei mir nicht.
Ich nutze aber auch wie Dieter S. eine Harmony und habe vom Logitech 
Support einen LED Controller freigeschaltet bekommen, der ansonsten alle 
Tasten der 44 Tasten FB bereitstellt. Evlt. liegt es daran... Ich kann 
anscheinend auch den PWR Knopf nicht lange drücken, um in den Standby zu 
kommen.

Ansonsten hatte ich kurzzeitig als IR Empfänger eine TSOP31236 dran, der 
geht auch, hat allerdings ein anderes Pinout, was man beachten muss.
Den hatte ich genommen, weil es den bei Reichelt gab.
Jetzt ist ein TSOP38136 wie aus der Teileliste dran.

Für die beiden Ferittbeads FB1 und FB3 habe ich einfach Lötbrücken 
gesetzt.

HDMI Splitter und Konverter zu FBAS habe ich von Amazon für zusammen 
~50€.
http://www.amazon.de/dp/B0081FDFMQ/ref=pe_386171_37038021_TE_M3T1_dp_1
http://www.amazon.de/Generic-Mini-HDMI-AV-Konverter-Videorecorder/dp/B00AASZUUM/ref=sr_1_1?ie=UTF8&qid=1405014547&sr=8-1&keywords=mini+hdmi2av
Bluerays mit Kopierschutz schienen zu funktionieren!

Ein 5V 10A Netzteil habe ich über Ebay direkt aus China für ca 14€ 
bestellt, es ist aber noch nicht da. Momentan nutze ich ein 
Labornetzteil.
http://www.ebay.de/itm/AC-DC-5V-10W-15W35W-50W-100W-150W-Universal-Regulated-Switching-Power-Supply-PSU-/201111943301?ssPageName=ADME:X:DERP:DE:1123
Gast #3732577
Lesenswert?

hagbard schrieb:
> Und wie stelle ich z.B. Brightness über die FB ein?
> White und dann Brighness Up/Down funktioniert bei mir nicht.

Funktioniert doch. Im USB Terminal sehe ich die Wertänderung, nur die 
Helligkeitsänderung war so gering, dass es nicht auffiel.

Nur in den Standbymode komme ich nicht.

Und die besagten LEDs funktionieren im Ambilightbetrieb nicht.
Muss ich noch was anderes einstellen? Blocksize? Oder kann das Bild 
verschoben sein? Aber ich erkenne kein direktes Muster bei den LEDs die 
ausbleiben.
Gast #3732608
Lesenswert?

Irgendwie hatte sich wohl meine Width LED Anzahl wieder verstellt.
Jetzt habe ich oben links 2 LEDS und in der Mitte auch zwei LEDs die 
nicht gehen (Backview). Unten sind in der Mitte 3 LEDs und links auch 3 
LEDs die nicht leuchten. Das bekomme ich auch mit kleineren oder 
größeren "L" Werten nicht weg.
#3733232
Lesenswert?

@hagbard:
Ich hatte das gleiche Problem wie du. Einige meiner LEDS blieben 
Schwarz. Es waren einige Stellen im Code, die mir nicht ganz sauber 
erschienen. Leider weiß ich nicht mehr genau was exakt dazu geführt hat, 
dass dieses Problem behoben wird.

Bspw. wurde ein Interrupt nicht abgefangen, der nach ca. einem Tag das 
Ambilight zum Absturz bringt, weil der Buffer schlichtweg überlief. 
Vielleicht hat Pitschu solche Bugs bereits in der aktuellen Version 
gefixed.


Im Anhang das CooCox-Projekt, das ich verwende.

*ACHTUNG*: Diese Version ist mit der ursprünglichen Pin-Belegung NICHT 
kompatibel!
Falls ihr die Software also nutzen wollt, müsst ihr die entsprechenden 
Stellen im Code ändern. (Als guter Anhaltspunkt: schaut euch die 
Pins.txt an!)

In dieser Version ist die Pin-Belegung geändert! Ich habe Ende letzten 
Jahres mal meine ursprüngliche Platine überarbeitet und das ging mit ein 
paar Pin Veränderungen einfach besser. :)

Dinge, die ich angepasst hatte:
- Viele Parameter zur Farbanpassung
- Weißpunkt über Look-Up-Table eingestellt (ich hatte damals die WS2812B 
mit dem Kolorimeter gemessen)
- Gamma-Anpassung
- kompatibel mit dieser Fernbedienung: 
http://www.ledlager.de/images/artikel/zoom/led_remote_control_stripe.jpg
- Hash wird generiert um zu erkennen, welcher Knopf auf FB gedrückt 
wurde. Kann also simpel auf jede andere Fernbedienung umgestellt werden.
- 50 Hz Ausgabe
- Settings können über FB geändert werden
- Settings können im Flash gespeichert werden
- Settings werden bei Start aus dem Flash geladen

Vielleicht hilft das dem ein oder anderen weiter...

Gruß
Tommy
Angehängte Dateien:
Gast #3733429
Lesenswert?

Danke Tommy.
Bei anderen scheint es ja zu laufen.
Ich versuche mich mal bei Gelegenheit an deiner Version.
Funktioniert sie denn noch mit der alten FB?
Gibt es noch Ideen zur "originalen" Firmware?
Gast #3733437
Lesenswert?

Übrigens, falls es jemanden interessiert:
Um die 44 Tastenfernbedienung mit einer Harmony zu ersetzten könnt ihr 
den Support mit der Bitte anschreiben, zu eurem Benutzerkonto ein Gerät 
mit der Modellnummer "LED-618" und dem Hersteller "LED" hinzu zufügen.
Dann braucht man die FB nicht zum Anlernen :-)
#3733475
Lesenswert?

Ich glaube mir dämmert es gerade ganz dunkel wegen dieser schwarzen 
LEDs. Das muss mit der Initialisierung oder der ordentlichen 
Deklarierung vom Array, das die RGB Daten beinhaltet, zusammenhängen.

Ich habe mal meine main.c/tvp_dcmi.c mit Pitschus verglichen.
1
rgbIcontroller_t  rgbImage [2*LEDS_X + 2*LEDS_Y];
2
volatile rgbIcontroller_t rgbImage [LEDS_PHYS] = {{0}};

und
1
volatile rgbValue_t   rgbSlots [SLOTS_Y][SLOTS_X];
2
volatile rgbValue_t   rgbSlots [LEDS_Y][LEDS_X] = {{{0}}};

So etwas in der Richtung muss es gewesen sein. Kannst ja mal probieren 
und diese Zeilen ersetzen.
Gast #3733538
Lesenswert?

Bei Pitchu in der main.c steht in Zeile 36/37:
1
// rgbImage is a scaled imgae of the raw video image blocks. It can be sized from 1x1 to 48x30
2
rgbIcontroller_t  rgbImage [2*SLOTS_X + 2*SLOTS_Y];
Ich habe 54x30...
Vielleicht ist das schon das Problem?

Im Excelsheet Bedienung V1.1.xlsx steht:
Set image high [288]
Set image width [334]
Wobei der Wert in Klammer wohl ein Defaultwert sein soll?
Gast #3733551
Lesenswert?

In ws2812.h steht im Kommentar:

04.05.2014  pitschu    dynamic LED strip size (max is 80 x 60)

wobei im Code folgendes steht:
1
#define    LEDS_XMAX    96
2
#define    LEDS_YMAX    60
3
#define    LEDS_MAXTOTAL  (2*LEDS_XMAX+2*LEDS_YMAX)      // MAX physical leds on stripe
...sollte also mit 54x30 gehen.
OP #3733981
Lesenswert?

hagbard schrieb:
> Bei Pitchu in der main.c steht in Zeile 36/37:// rgbImage is a scaled
> imgae of the raw video image blocks. It can be sized from 1x1 to 48x30
> rgbIcontroller_t  rgbImage [2*SLOTS_X + 2*SLOTS_Y];
> Ich habe 54x30...
> Vielleicht ist das schon das Problem?

hagbard schrieb:
> 04.05.2014  pitschu    dynamic LED strip size (max is 80 x 60)
>
> wobei im Code folgendes steht:#define    LEDS_XMAX    96
> #define    LEDS_YMAX    60
> #define    LEDS_MAXTOTAL  (2*LEDS_XMAX+2*LEDS_YMAX)      // MAX physical
> leds on stripe
> ...sollte also mit 54x30 gehen.

Vorsicht Leute, ihr habt verschiedene Versionen. Die von hagbard 
zitierten Zeilen sind aus der V1.0 und waren ein bekannter Bug. Das 
zweite Zitat ist aus der V1.1. Auch die CooCox Fassung von Tommy_R ist 
die V1.0.

In der V1.1 wurde nicht nur dieser Bug behoben, sondern auch andere. 
Grundsätzlich  gilt für die verschiedenen Array:
rgbSlots und rgbImage haben nichts mit der physischen Anzahl LEDs zu tun 
und dienen nur der Bildskalierung und Aggregation. Sie sind beide 64*40 
Pixel groß, wobei rgbImage aus rgbSlots runterskaliert wird (bis runter 
zu 1*1). Erst aus rgbImage wird dann das 1-dimensionale Array 
tvprocRGBDelayFifo gefüllt und aus diesem dann ws2812ledRGB. Nur die 
beiden letzten sind von der Anzahl der LEDs abhängig und können bis zu 
2*96 + 2*60 LEDs ansteuern. Deine 54*30 sind also gar kein Problem.
Gast #3734025
Lesenswert?

Peter Schulten schrieb:
> Vorsicht Leute, ihr habt verschiedene Versionen. Die von hagbard
> zitierten Zeilen sind aus der V1.0 und waren ein bekannter Bug.

Ich habe vermutlich wirklich aus der falschen Version zitiert.
Aufgespielt ist aber V1.1 vom 05.05.2014.
Im Terminal meldet sich auch die V1.1
1
Hi there. This is pitschu's AmbiLight V1.1
Sonst noch Ideen?
OP #3734062
Lesenswert?

hagbard schrieb:
> Irgendwie hatte sich wohl meine Width LED Anzahl wieder verstellt.
> Jetzt habe ich oben links 2 LEDS und in der Mitte auch zwei LEDs die
> nicht gehen (Backview). Unten sind in der Mitte 3 LEDs und links auch 3
> LEDs die nicht leuchten. Das bekomme ich auch mit kleineren oder
> größeren "L" Werten nicht weg.

Ich nehme mal an, dies ist immer noch das Problem. Du sagst Backview und 
damit würden also rechts einige Lampen fehlen. Ich würde vermuten dass 
in dem Fall der rchte Rand falsch ist, also verdreh mal W (= width).
Gast #3734260
Lesenswert?

Hallo Peter,

danke für die Antwort.
Muss ich heute Abend noch mal ausprobieren.
Also von vorne auf den Fernseher gesehen fehlen oben rechts 2 und unten 
rechts 3 LEDs. Aber in der Mitte oben und unten fehlen auch 2 bzw. 3 
LEDs.
Am Rand hat sich beim Verschieben mit L oder W schon mal was geändert, 
aber wie passen die dunklen LEDs in der Mitte dazu?
Ich muss noch mal die eingestellte Anzahl der LEDs prüfen.
Bei den letzten Tests hat es aber gestimmt meine ich.

Gruß
Hagbard
OP #3734577
Lesenswert?

hagbard schrieb:
> Am Rand hat sich beim Verschieben mit L oder W schon mal was geändert,
> aber wie passen die dunklen LEDs in der Mitte dazu?
> Ich muss noch mal die eingestellte Anzahl der LEDs prüfen.
> Bei den letzten Tests hat es aber gestimmt meine ich.

Die dunklen LEDs in der Mitte entstehen durch die Verarbeitung des 
Bildes in 2 Hälften (links und rechts). Zunächst wird das Bild in ein 
grobpixeliges 64*40 Bild gerastert. Das passiert in 2 Durchgängen (32*40 
links, dann 32*40 rechts). Dabei wird die Befüllung der 32 Pixel von 
links nach rechts durchgeführt. Bei unglücklichen Teierverhältnissen 
kann es vorkommen, dass das letzte Pixel leer bleibt und daher in der 
Mitte bzw. rechts ein dunkler Fleck entsteht. Durch Änderung des linken 
Randes (L) und der Breite (W) kann letztendlich das Teilerverhältnis 
beeinflusst werden. Ideal sind natürlich Werte bei denen die Width durch 
32 teilbar ist.
Wenn das nicht gelingt, kannst du auch die Breite und Höhe des rgbImage 
über die Parameter X und Y ändern. Wenn du z.B. 54 x 30 LEDs hast, macht 
es Sinn, X und Y auf diese Werte zu stellen. rgbImage ist die letzte 
Stufe bevor in die physische LED Welt umgeschaltet wird und daher ist 
ein größeres X * Y garnicht sinnvoll. Kleinere Werte für X und Y bis 
runter zu 1 * 1 sind sinnvoll. So leuchten z.B. bei 1 * 1 alle LEDs in 
der Durchschnittsfarbe des Gesamtbildes. So war das bei früheren Philips 
TVs mal. Bei z.B. 2 * 2 kann man sehr schön sehen, wie die linke und 
rechte Hälfte der LEDs homogen in 2 Farben leuchten (zum Testen ganz 
hilfreich).
Gast #3735152
Lesenswert?

Hallo Peter,

danke für die Hilfe, aber es klappt leider noch nicht.

Ich habe "X" und "Y" jetzt auch auf die physikalische LED Anzahl 54x30 
gestellt (genauso wie "P" und "R"). Aber die dunklen LEDs sind immer 
noch da.
"L" und "T" sind doch die Verschiebungen des Bildes bezogen auf den Rand 
und "W" und "H" die Größe des Bildes?
"L" und "T" so einstellen, das die Randfarben links und oben zum Bild 
passen, richtig? Aber worauf ist die Größe bezogen?
Und was macht "E"?
Irgendwie durchschaue ich das nicht.
Gast #3735164
Lesenswert?

Also vergößern von "W" bringt Licht ins Dunkel, allerdings nicht 
gleichmäßig.
Oben fehlten ja nur 2 LEDs in der Mitte und am Rand unten dagegen 
jeweils 3 LEDs.
Nun habe ich bei W=808 z.B. oben keine dunklen LEDs mehr, aber unten 
noch jeweils eine. Kann es sein, dass da noch irgendwo falsch gezählt 
wird?
Eigentlich müsste das ja symmetrisch sein.
Gibt es einen rechnerischen Wert für W oder ist das durch reines 
ausprobieren zu ermitteln?
OP #3740216
Lesenswert?

Als Update die Version 1.2 im Anhang.

Ich habe mnir das Problem mit fehlenden LEDs nochmal angesehen und 
einige Verbesserungen vorgenommen. Wie vermutet kann es bei ungünstigen 
Teilerverhältnissen von Anzahl LEDs zur internen Darstellung von 64x40 
zu Lücken aufgrund von fehlenden Divisionsresten kommen. Das ist nun 
ganz anders gelöst und kann nicht mehr vorkommen.
Hier die Änderungen der V1.2:
- Verbesserte Skalierungsberechnungen (s.o.)
- Parametrierbare Frameanzahl zur Ermittelung der schwarzen Ränder (G)
- Unterdrückung von "Schwarz-Flackern" der LEDs in schwarzen Rändern
- Bessere Defaultwerte

Noch ein paar Tips zum Einstellen:
- Erst die Anzahl der LEDs mit P und R einstellen.
- Die Parameter X und Y sollten die gleichen Werte wie P und R haben. 
Größere Werte sind Blödsinn; kleinere Werte machen die LED-Darstellung 
gröber (mehrere LEDs mit gleicher Farbe).
- Zum Einstellen der Links/Rechts bzw. Oben/Unten Grenzen (L/W/T/H) 
sollte die dynamische Balkenerkennung abgeschaltet sein (Parameter G auf 
0 runterdrehen)
- Der Parameter E sollte 1 sein. Damit zeigen die LEDs nur den jeweils 
äußersten Streifen des Bildes an.
- Am besten mit einem Standbild (ideal sind Comics) die Grenzen so 
einstellen, dass die LEDs die Farben des äußeren sichtbaren Bildrandes 
anzeigen. Das Bild muss Vollbild, also keine Balken haben.
- Am besten tastet man sich 'von außen' an das Bild an.
- Nach Einstellung der Grenzen sollten die Parameter G und E wieder 
zurückgestellt werden. D=100 bedeutet, dass die Randerkennung permanent 
über 100 Frames (ca. 4 Sekunden) integriert und dann die Ränder 
bestimmt. Bei kleineren Werten geht das schneller, führt aber dazu, dass 
in dunklen Szenen evtl. temporär die Ränder verschoben werden, und im 
Bild liegende helle Stellen auf die LEDs wirken.
- Mit E wird eingestellt, wie breit der mit den LEDs dargestellte äußere 
Bildrand sein soll. E=1 heißt, dass nur die ca. 12 äußeren Pixel 
abgebildet werden. Bei E=5 sind es entsprechend ca. 60 Pixel.

Viel Erfolg und Spaß weiterhin
pitschu
Angehängte Dateien:
Gast #3741762
Lesenswert?

Hallo Peter,

schönen Dank für das Update.
Ich habe es aufgespielt und noch mal alles sauber eingestellt.
Auf jeden Fall ist die Anleitung sehr verständlich so.
Ich erkenne jetzt aber keinen Unterschied, da bei mir durch vergrößern 
der Width vorher dann auch alles gepasst hatte.

Hier mal mein Vorgehen:
Ein Standbild mit mehreren einfarbigen Flächen je Seite ist ideal, da 
man dort die Farben sehr gut kontrollieren kann. Ich nutzte ein 
Standbild von Nickelodeon.
Zuerst G=0 und E=1.
Dann habe ich L sehr klein gemacht und dann von vorne gesehen den linken 
Bildrand eingestellt, indem ich L vergrößert habe. Dabei muss man auch 
auf die linken LEDs am oberen und unteren Streifen achten. Wenn LEDs 
fehlen oder schwach flackern, dann ist der Wert noch zu klein. Danach 
habe ich W sehr groß gemacht und den rechten Rand eingestellt, indem ich 
W verkleinert habe. Auch hier muss man auf die rechten LEDs oben und 
unten achten. Fehlen LEDs oder flackern nur schwach, dann ist W noch zu 
groß.

Dann habe ich analog dazu T sehr klein gemacht und dann den oberen Rand 
eingestellt, indem ich T vergrößert habe. Dabei achtet man auch auf die 
oberen LEDs rechts und links. Anschließend habe ich H sehr groß gemacht 
und den unteren Rand eingestellt, indem ich H langsam wieder verkleinert 
habe. Dabei achtet man auch auf die unteren LEDs links und rechts.

Zuletzt habe ich G wieder auf 100 gesetzt (mit gd) und E wieder auf 4.
Dann flackerten bei mir plötzlich die LEDs oben und unten am Rand. Das 
habe ich durch nachjustieren von L und H wegbekommen.


Vielleicht als Hinweis, dass oben im Text von Pitschu mit D=100 der 
default Wert für G gemeint ist.

Gruß
Hagbard
#3759695
Lesenswert?

hagbard schrieb:
> HDMI Splitter und Konverter zu FBAS habe ich von Amazon für zusammen
> ~50€.
> http://www.amazon.de/dp/B0081FDFMQ/ref=pe_386171_37038021_TE_M3T1_dp_1
> 
http://www.amazon.de/Generic-Mini-HDMI-AV-Konverter-Videorecorder/dp/B00AASZUUM/ref=sr_1_1?ie=UTF8&qid=1405014547&sr=8-1&keywords=mini+hdmi2av
> Bluerays mit Kopierschutz schienen zu funktionieren!

Falls es Jemanden interessiert:
Diese Kombination aus Splitter und Konverter läuft bei mir einwandfrei!

Merkwürdig is nur, dass der Konverter anscheinend die 5V vom HDMI direkt 
mit der USB Buchse zur Stromversorgung verbindet. Da ich das gleiche 
Netzteil für LEDs und Konverter benutzt habe, leuchteten die LEDs dann 
immer schwach, obwohl das Netzteil nicht eingesteckt war.
Das USB Kabel habe ich dann einfach entfernt. Der Konverter wird jetzt 
über HDMI mit Strom versorgt.

Vielen Dank an pitschu für das tolle Projekt!

Gruß
Benedikt
Gast #3761555
Lesenswert?

Peter Schulten schrieb:
> Als Update die Version 1.2 im Anhang.

Wenn ich die Dateien aus dem Zipfile in Eclipse (4.3.1) importiere, 
müssten dann nicht auch die Einstellungen fürs Kompilieren enthalten 
sein?
Wenn ich unter Project auf Build All gehe, kommt:
1
14:49:43 **** Clean-only build of configuration Debug for project Ambilight-STM32F4-GNUARM-V1.2 ****
2
make clean 
3
make: *** No rule to make target `clean'.  Stop.

Oder muss ich die Kompilerflags noch selber irgendwo ergänzen?
Ich dachte, dass sei u.a. der Sinn eines Projektfiles, auch die 
Einstellungen zu speichern.
Ein externes Makefile ist aber auch nicht vorhanden.

Kann mir jemand sagen, was ich falsch mache?
Gast #3762184
Lesenswert?

Wenn du den Ordner mit der Funktion "Inport existing project" 
importierst, sollte es gehen. Nach dem Import einmal Index rebuild, und 
dann Build Project. Das Makefile wird vom CDT Plugin automatisch 
generiert und liegt dann im Debug Ordner.

PS
Gast #3762742
Lesenswert?

OK, ich importiere den Ordner als existing Project und mache auf den 
importierten Ordner im Package Explorer einen Rechtsklick und dann Index 
->Rebuild. Dann steht unten rechts ein Fortschritt der bis 100% 
durchläuft.
Ein Makefile erhalte ich danach nicht und es werden immer noch ganz 
viele unresolved inclusions angezeigt.
Hm, fehlt mir da vielleicht noch ein PlugIn für Eclipse?
Gast #3763129
Lesenswert?

Du brauchst auf jeden Fall das CDT und sowas wie "GNU ARM C/C++ Cross 
Compiler Support".
Check mal in den Project properties unter C/C++ Build -> Environment ob 
die PATH variable gesetzt ist. Evtl. findet eclipse deine ARM toolchain 
nicht, weil noch mein PATH eingestellt ist. Da ich eine Eclipse 
Installation für alle Zielsysteme einsetze, verwende ich den Project + 
Workspace properties ein entsprechendes Environment für jedes Ziel.
Gast #3763396
Lesenswert?

Ich bin nach folgender Anleitung vorgegangen:
http://gnuarmeclipse.livius.net/blog/install/

Luna 4.4 Eclipse IDE for C/C++ Developers (Win7 64-bit)
GNU ARM Plugin nachinstalliert
Toolchain: GNU Tools for ARM Embedded Processors gcc-arm-none-eabi-
4_8-2014q2-20140609-win32.exe
make und rm:
http://sourceforge.net/projects/gnuarmeclipse/files/Miscellaneous/

Unter Properties -> C/C++ Build -> Builder Settings ist der Haken bei 
Generate makefile automatically gesetzt

Unter Properties -> C/C++ Build -> Environment habe ich bei PATH den 
Pfad zu make und rm und zur Toolchain angegeben.

Ich sehe nirgends mehr Pfade die nicht zu meinem Setup passen.
Ich sehe aber auch nirgends irgendwelche Compilerflags, die aus dem 
Projekt übernommen worden sind.

Wenn ich übersetzen möchte, findet er keine Regel für das clean...
Ich könnte ein eigenes Makefile schreiben, aber ich dachte eigentlich, 
dass alles im Projekt steht.
Ich bin ratlos...
Gast #3763492
Lesenswert?

Die relevanten settings sind in den Dateien .cproject, .project und dem 
Ordner .settings
Alle drei sind auch im ZIP vorhanden -> irgendwas läuft da falsch. Leg 
einfach ein neues Projekt an, kopiere alle Sourcen aus dem ZIP rüber und 
setz die Compiler flags manuell (aus dem .cproject). Ich weiß, ist 
elendig, aber geht :-)

pitschu
Gast #3763726
Lesenswert?

Also ich vermute, dass das an Unterschieden in der CDT Plugin Version 
liegt.
Evtl. hast du auch noch Einstellungen lokal im Workspace gemacht, die 
nicht im Projekt enthalten sind.

Ich habe unter Properties -> c/c++ build folgende Meldung:
Orphaned configuration. No base extension cfg exists for 
org.eclipse.cdt.cross.arm.gnu.summon.windows.elf.debug.1092562495
Gast #3763809
Lesenswert?

Mit einem frischen Projekt (noch ohne Inhalt) sehe ich deutliche 
Unterschiede im Projektfile .cproject
Bei dir steht id="org.eclipse.cdt.cross.arm.gnu.summon.windows
und bei mir id="cdt.managedbuild.config.gnu.cross
Das zieht sich durchs ganze Dokument.
Soweit ich das verstehe, bedeutet das wohl, dass wir unterschiedliche 
Plugins verwenden.
Ich werde mal versuchen ein neues Projekt mit alles Einstellungen zu 
erstellen.
Gast #3764767
Lesenswert?

Also mit dem von mir weiter oben beschriebenen Setup mit Eclipse 4.4 und 
einem neuen Projekt komme ich soweit, dass alles kompiliert, wenn ich in 
der moodlight.c alles mit sinf() auskommentiere.
Da meckert sonst der Linker und sagt undefined reference.
Das habe ich aber noch nicht hinbekommen...
Gast #3768427
Lesenswert?

Danke für die Hilfe und auch für das tolle Projekt.
Ich habe es Freitag noch hinbekommen und wollte erst eine Kurzanleitung 
schreiben, bevor ich hier noch tausend Posts mache.
Wurde ja etwas Offtopic hier mit den Fragen, aber es ist vielleicht für 
den einen oder anderen Interessant.
Es stehen zwar alle Einstellungen im .cproject File, aber das muss man 
ja auch erst mal verstehen.

Im Anhang eine Anleitung wie man das aktuelle Eclipse Luna 4.4 mit dem 
aktuellen GNU ARM GCC einrichtet (Win7) und ein neues Projekt mit allen 
Einstellungen erstellt.
Ich habe den Workspace dann auch erfolgreich auf einen zweiten Rechner 
mit gleicher Installation transferieren können.
Auf dem Discovery habe ich das neu erstellte HEX aber noch nicht 
getestet.

Mal sehen was ich jetzt damit mache.
Vielleicht ein paar Lichtmuster beim Moodlight ändern oder meine 
Settings als default einstellen... :-)

Bernd
Angehängte Dateien:
Gast #3816441
Lesenswert?

Peter Schulten schrieb:
> Für die Mittelwerbestimmung sollten genügend Reserven vorhanden sein, am
> einfachsten lässt sich das in der vorhandenen Berechnung der 4 Kanten
> unterbringen. Da wird sowieso schon Mittelwert, Min und Max berechnet.

In der Funktion ambiLightSlots2Dyn() ?

Wenn ich die Funktion richtig verstanden hab werden hier alle 
rgbSlots[][] abgelaufen und jeweils die R, G und B Werte addiert um die 
Helligkeit bzw. eben die schwarzen Bereiche zu erkennen. Dies geschieht 
zuerst zeilenweise, danach spaltenweise  und wird in dynRows[].intAvg 
bzw. dynColumns[] gespeichert. Daraus werden dann dynLeft, dynRight, 
dynTop and dynBottom berechnet.

Die Mittelwertbildung müsste ja erst danach stadtfinden oder?
Gast #3816866
Lesenswert?

Armin schrieb:
> In der Funktion ambiLightSlots2Dyn() ?

Genau in dieser Funktion kann man es am besten unterbringen. Z.B. so:
1
....
2
long imageRsum, imageGsum, imageBsum;  // auf 0 setzen nicht vergessen
3
uint8_t imageR, imageG, imageB;  // die globalen Farbwerte
4
....
5

6
for (y = 0; y < SLOTS_Y; y++)
7
{
8
  long minRGB, maxRGB, sumRGB;
9

10
  minRGB = 0xffff;
11
  maxRGB = 0;
12
  sumRGB = 0;
13

14
  for (x = 0; x < SLOTS_X; x++)
15
  {
16
    int s = rgbSlots[y][x].R + rgbSlots[y][x].G + rgbSlots[y][x].B;
17
    if ( s < minRGB)
18
      minRGB = s;
19
    if (s > maxRGB)
20
      maxRGB = s;
21
    sumRGB += s;
22

23
    imageRsum += rgbSlots[y][x].R;
24
    imageGsum += rgbSlots[y][x].G;
25
    imageBsum += rgbSlots[y][x].B;
26
  }
27

28
  imageR = imageRsum / (SLOTS_X * SLOTS_Y);
29
  imageG = imageGsum / (SLOTS_X * SLOTS_Y);
30
  imageB = imageBsum / (SLOTS_X * SLOTS_Y);
31
 
32
.....
Gast #3817185
Lesenswert?

Armin schrieb:
> Danke für die schnelle Antwort.
>
> An der Stelle würden doch die schwarzen Balken mit in die Berechnung
> eingehen oder nicht?

Ja, das stimmt, es werden Durchschnittswerte über den gesamten Schirm 
gebildet. Wenn du nur den 'nicht schwarzrn' Teil willst, machst du das 
gleiche, nur eben später in der Funktion wenn die Werte dynLeft, 
DynRight, ... berechnet sind. Dies sind dann die Grenzen für die o.g. 
FOR-Schleifen.

PS
#3818680
Lesenswert?

Jo, sieht ganz gut aus..
Es wird ja einfach anstelle des Discovery F4 Boards ein Raspberry Pi und 
anstelle unseres TVP5150 Erweiterungsboards ein USB Video-Grabber 
verwendet.
Ehrlich gesagt ist mir da unsere Kompakte Lösung hier lieber, Raspberry 
muss ja auch booten uns so, aber jedem das seine...
Der Preis ist natürlich super, $59 für alles!

Ich bin mit ein paar Kollegen derzeit am überlegen eine All-In-On 
Hardware zu entwickeln. Mit HDMI-Ein- und Ausgang, CVBS Converter, 
TVP5150, STM32 Controller (evtl. auch das F4 Board) und 5V DC/DC 
(Eingangsspannung 10-30V, Versorgung z.B. mit Notebooknetzteile).
Das ganze wird aber noch ein Weilchen dauern.
Gast #3836301
Lesenswert?

Hallo Peter,
ich habe leider ein Problem mit der Konfiguration über USB, evtl. ein 
Bug?

Da ich mir nun einen HDMI-Splitter gekauft habe und die Hardware wieder 
ausgegraben hab, flashte ich heute die SW V1.2 aus Juli die du gepostet 
hast. Funktioniert alles fein. Nun muss ich ja die Einstellungen, 
zumindest die Anzahl der LEDs, an meine Konfiguration anpassen und da 
tritt das Problem auf:

Ich drücke auf P für LED_X und stelle die Anzahl mit +/- auf 31 ein, nun 
wenn ich zB auf R für LED_Y drücke, dann wird die Anzahl der LED_X in 
die selbe Richtung um eins verringert/vergrößert, also je nach dem ob 
ich davor + oder - gedrückt habe. Ich hoffe ich konnte mich verständlich 
ausdrücken. Die Einstellung des vorherigen Parameters wird nochmals 
ungewollt um eine Stufe manipuliert.

Vielleicht hat sich da ein Bug eingeschlichen und es ist dir noch nicht 
aufgefallen, da die Einstellungen für deinen Fernseher ja Default-Werte 
sind... Bei der letzten Version gab es dieses Problem auf jeden Fall 
nicht.

Ich kann natürlich diesen "Bug" umgehen in dem ich eine Stufe in der 
Einstellung drunter schalte und beim Umschalten auf einen anderen 
Parameter, wird sich der letzte auf den richtigen Wert einstellen.

Es kann natürlich auch sein, dass mein "Terminal" spinnt...

Grüße
Gast #3836452
Lesenswert?

Hallo,
tolles Projekt und vielen Dank schon mal, dass du alle nötigen Infos zum 
Nachbau frei zugänglich gemacht hast.

Ich habe nicht den ganzen Thread durchforstet, aber so wie ich es 
verstanden habe braucht die Hardware ein CVBS Signal (analog).
Ich habe bei mir ein Sat-Receiver mit HDMI. Laut der Beschreibung oben 
funktioniert da ein Splitter+Converter, den ich dazwischen schalten 
muss.

Jetzt zu meiner Frage:
Alternativ zum TV Programm ist mein PC am TV als Monitor angeschlossen, 
so dass ich Gamingstreams aus dem Netz schauen kann.
In diesem Fall würde die Hintergrundbeleuchtung nicht mehr 
funktionieren, weil weiterhin das Sat-HDMI Signal verarbeitet wird.

Hat von euch jemand eine Idee, wie man das Problem lösen könnte bzw. ob 
es überhaupt machbar ist ohne Kabel umzustecken?
Meine Idee wäre (gibt es schon), dass ein Programm auf dem PC läuft, 
welches die Farben auswertet und per USB an das STM32 Board schickt und 
dort die passende Anzeige erzeugt wird.

Grüße und ein schönes Wochenende
Gast #3837495
Lesenswert?

Waldemar schrieb:
> Ich drücke auf P für LED_X und stelle die Anzahl mit +/- auf 31 ein, nun
> wenn ich zB auf R für LED_Y drücke, dann wird die Anzahl der LED_X in
> die selbe Richtung um eins verringert/vergrößert, also je nach dem ob
> ich davor + oder - gedrückt habe.

Hallo Waldemar,
das kann ich nicht bestätigen. Ich nutze selbst auch die USB Variante 
und die funktioniert tadellos. Ich nehme Putty als Terminalprogramm und 
kann alle Parameter ohne diese Effekte einstellen. Wird denn bei dir das 
erste +/- vielleicht verschluckt, so dass alles um ein Zeichen 
verschoben beim AL ankommt?
Den USB Treiber auf AL Seite habe ich nicht selbst geschrieben, sondern 
von den STM Libs übernommen. Evtl. gibt's da noch ein Thema mit 
unterschiedlichen Compiler-Einstellungen etc.
#3839254
Lesenswert?

Hallo,

ich bin beim Stöbern im Netz auf diesen Thread aufmerksam geworden und 
muss sagen: Hut ab! Das ist wirklich ein super ausgereiftes Projekt.

Nach Studium aller Beiträge habe ich die Schaltung jetzt mal aufgebaut. 
Allerdings habe ich noch ein großes Problem. Moodlight funktioniert 
super, aber Ambilight geht noch nicht.
Nach Start des Discovery Boards werden ja die Parameter des TV Chips 
ausgegeben. Diese sind alle 0. Das weist sicher schon auf ein Problem 
hin. Ich habe daraufhin alle Verbindungen des Chips (ist ja eine kleine 
Bauform) durchgemessen. Das war soweit ok. Den Pull-up für i2c habe ich 
auch berücksichtigt. Jetzt weiß ich aber nicht mehr weiter. Was kann ich 
noch testen, um dem Fehler auf die Spur zu kommen? Etwas Hilfestellung 
könnte ich jetzt gut gebrauchen.

beste Grüße
#3839277
Lesenswert?

@  Alex M:
nimm doch einfach zwei HMDI-Splitter und zwei HDMI-CVBS Converter, ein 
Splitter+Converter für deinen Receiver und ein Splitter+Converter für 
deinen PC hast ja zwei CVBS Eingänge auf der TVP5150 Platine.
ODER
1x Splitter+Converter und davor ein 2:1 Umschlater (2x HDMI IN, 1 HDMI 
Out).

@ Lorenz H.
Ich vermute du hast ein Problem mit dem I2C-Bus, oder dein TVP5150 ist 
tot? Versorgungsspannungen an den Pins des TVP5150 schon mal 
nachgemessen?
Gast #3839312
Lesenswert?

Lorenz H. schrieb:
> Moodlight funktioniert
> super, aber Ambilight geht noch nicht.
> Nach Start des Discovery Boards werden ja die Parameter des TV Chips
> ausgegeben. Diese sind alle 0. Das weist sicher schon auf ein Problem
> hin.

Hallo,
anfangs hatte ich das selbe Problem, da ich mir meine Platine selber 
gelayoutet habe (andere Bauteile, manches weggelassen usw..)
Dabei funktionierte Moodlight perfekt und Ambilight nicht. Mein Problem 
war, dass die Versorgungsspannung vom TVP5051 andauernd 
zusammengebrochen ist -> Dauerneustart. Entweder mit Oszi anschauen, 
oder einfach ein paar Stützkondensatoren (auf allen Spannungsebenen) 
hinzufügen und beobachten.

Kann sein (muss aber nicht :-)  ), dass du das selbe Problem hast....

Hoffe es funktioniert dann bei dir!
Gruß
Gast #3839323
Lesenswert?

pitschu schrieb:
> Waldemar schrieb:
>> Ich drücke auf P für LED_X und stelle die Anzahl mit +/- auf 31 ein, nun
>> wenn ich zB auf R für LED_Y drücke, dann wird die Anzahl der LED_X in
>> die selbe Richtung um eins verringert/vergrößert, also je nach dem ob
>> ich davor + oder - gedrückt habe.
>
> Hallo Waldemar,
> das kann ich nicht bestätigen. Ich nutze selbst auch die USB Variante
> und die funktioniert tadellos. Ich nehme Putty als Terminalprogramm und
> kann alle Parameter ohne diese Effekte einstellen. Wird denn bei dir das
> erste +/- vielleicht verschluckt, so dass alles um ein Zeichen
> verschoben beim AL ankommt?
> Den USB Treiber auf AL Seite habe ich nicht selbst geschrieben, sondern
> von den STM Libs übernommen. Evtl. gibt's da noch ein Thema mit
> unterschiedlichen Compiler-Einstellungen etc.

Danke erstmal für deine Antwort.

Ich hatte bewusst dein HEX-File geflasht, damit es zu keinen Problemen 
kommt. Zweiter Versuch war mit einem anderem "Terminal"-Programm, 
gleiches Ergebnis. So viel Auswahl habe ich bei MacOS nicht, ich nutze 
eigentlich immer Standard-Terminal mit "screen"-Befehl um mich seriell 
zu verbinden. Ist aber auch egal, da ich wie gesagt diesen "Bug" der bei 
mir auftritt leicht umgehen konnte.

Danke trotzdem! Sehr gute Arbeit!

Ich habe demnächst vor noch einen DC/DC-Wandler auf die Platine zu 
setzen. Welche Ströme benötigt Ihr denn so? Bei meiner Konfiguration 
sind es ca. 3,5 Ampere.
Ich dachte einer mit 5 Ampere max würde jedem ausreichen?

Grüße
#3840145
Lesenswert?

So, ich habe jetzt mal alle Spannungen kontrolliert. Die 3,3V waren noch 
3V, da ich die Diode noch nicht gebrückt hatte. Ich dachte schon, das 
wars, aber leider nach wie vor keine Daten.
Auch die 1,8V sind vorhanden und stabil.

Kurz nach dem Einschalten zappelt SCL, aber SDA bleibt auf high. Ich 
werde morgen nochmal alle Leiterbahnen auf Schlüsse etc. kontrollieren, 
ansonsten fehlt mir die Fantasie.

beste Grüße
#3842597
Lesenswert?

Hallo zusammen,

ich bräuchte jetzt doch noch mal eure Hilfe. Am Ergebnis hat sich 
bislang leider nichts geändert. Folgendes habe ich getestet:

Spannungsversorgung 3,3V und 1,8V
Kurzschlüsse zwischen den Pins des TVP5150
korrekte Vebindung der Pins des TVP5150
SCL mit Oszi gemessen: zappelt nach Einschalten
SDA mit Oszi gemessen: bleibt dauernd high
zusätzliche Stützkondensatoren für 3,3V und 1,8V
verwendet wird das Platinenlayout von Patrick B.
einen Ersatz TVP hatte ich noch, aber ein Austausch hat kein anderes 
Ergebnis gebracht. Alle ausgelesenen Daten sind NULL.

Kann es sein, dass der verwendete Quartz nicht schwingt? Ich habe den im 
HBE-Shop bestellt. Er hat den Aufdruck 14.3NJ54. Wie kann ich prüfen, ob 
er schwingt? Wenn ich mit dem Oszi messe, sehe ich nichts. Kann das 
evtl. daran liegen, dass der Tastkopf das Signal zu sehr belastet?

Wie empfindlich sind die TVP? Ist es wahrscheinlich, gleich zwei beim 
einlöten zerstört zu haben? Kann die Unterspannung von 3V einen Defekt 
hervor gerufen haben?

Bevor ich jetzt noch mal eine weitere Bestellung über TVP, Quartz o.ä. 
losschicke, möchte ich gern meine Fehler geprüft und ausgeschaltet 
haben. Was sollte ich jetzt noch testen?

beste Grüße
Gast #3843902
Lesenswert?

Lorenz H. schrieb:
> SCL mit Oszi gemessen: zappelt nach Einschalten
> SDA mit Oszi gemessen: bleibt dauernd high

Hallo Lorenz,
das ist nicht gut - zumindest sollte SDA die gesendeten Daten des 
STM32F4 zeigen. Wenn die nicht zu sehen sind, könntesdt du mal ohne den 
TVP-Aufsatz testen. Wenn das auch kein SDA zeigt, ist wohl der STM32F4 
defekt.

pitschu
Gast #3846273
Lesenswert?

Hallo pitschu und alle anderen, dir mir mit Tipps geholfen haben. Zum 
Glück ist alles heil :-). Ich habe nur nicht gut genug getestet. Ich 
hatte einen Feinschluss am Pull-Up Widerstand. Jetzt geht alles.

Vielen Dank noch mal.

beste Grüße
#3877928
Lesenswert?

So guten Abend ;)
alles zusammengebaut. Moodlight funktioniert tadellos - aber jetzt hänge 
ich leider.

Mein Ambilight will nicht funktionieren :-/

Der "Locked" Status 0E kommt soweit. Bei Reset gibt der 5150 folgendes 
aus.

<\r>tvp5150: Video input source selection #1 = 0x02<\n>
<\r>tvp5150: Analog channel controls = 0x15<\n>
<\r>tvp5150: Operation mode controls = 0x00<\n>
<\r>tvp5150: Miscellaneous controls = 0xaf<\n>
<\r>tvp5150: Autoswitch mask= 0xdc<\n>
<\r>tvp5150: Color killer threshold control = 0x10<\n>
<\r>tvp5150: Luminance processing controls #1 #2 and #3 = 60 00 40<\n>
<\r>tvp5150: Brightness control = 0x3c<\n>
<\r>tvp5150: Color saturation control = 0x80<\n>
<\r>tvp5150: Hue control = 0x00<\n>
<\r>tvp5150: Contrast control = 0x50<\n>
<\r>tvp5150: Outputs and data rates select = 0x40<\n>
<\r>tvp5150: Configuration shared pins = 0x02<\n>
<\r>tvp5150: Active video cropping start = 0x0000<\n>
<\r>tvp5150: Active video cropping stop  = 0x0000<\n>
<\r>tvp5150: Genlock/RTC = 0x01<\n>
<\r>tvp5150: Horizontal sync start = 0x80<\n>
<\r>tvp5150: Vertical blanking start = 0x00<\n>
<\r>tvp5150: Vertical blanking stop = 0x00<\n>
<\r>tvp5150: Chrominance processing control #1 and #2 = 0c 14<\n>
<\r>tvp5150: Interrupt reset register B = 0x00<\n>
<\r>tvp5150: Interrupt enable register B = 0x00<\n>
<\r>tvp5150: Interrupt configuration register B = 0x00<\n>
<\r>tvp5150: Video standard = 0x00<\n>
<\r>tvp5150: Chroma gain factor: Cb=0x00 Cr=0x00<\n>
<\r>tvp5150: Macrovision on counter = 0x0f<\n>
<\r>tvp5150: Macrovision off counter = 0x01<\n>
<\r>tvp5150: ITU-R BT.656.4 timing(TVP5150AM1 only)<\n>
<\r>tvp5150: Device ID = 5150<\n>
<\r>tvp5150: ROM version = (hex) 04.00<\n>
<\r>tvp5150: Vertical line count = 0x020d<\n>
<\r>tvp5150: Interrupt status register B = 0x80<\n>
<\r>tvp5150: Interrupt active register B = 0x00<\n>
<\r>tvp5150: Status regs #1 to #5 = 10 00 1a b0 81<\n>
<\r>tvp5150: Teletext filter 1 reg 0xb1 = 00 00 00 00 00 <\n>
<\r>tvp5150: Teletext filter 2 reg 0xb6 = 00 00 00 00 00 <\n>
<\r>tvp5150: Teletext filter enable = 0x00<\n>
<\r>tvp5150: Interrupt status register A = 0x00<\n>
<\r>tvp5150: Interrupt enable register A = 0x00<\n>
<\r>tvp5150: Interrupt configuration = 0x04<\n>
<\r>tvp5150: VDP status register = 0x40<\n>
<\r>tvp5150: FIFO word count = 0x00<\n>
<\r>tvp5150: FIFO interrupt threshold = 0x80<\n>
<\r>tvp5150: FIFO reset = 0x00<\n>
<\r>tvp5150: Line number interrupt = 0x00<\n>
<\r>tvp5150: Pixel alignment register = 0x004e<\n>
<\r>tvp5150: FIFO output control = 0x00<\n>
<\r>tvp5150: Full field enable = 0x00<\n>
<\r>tvp5150: Full field mode register = 0x7f<\n>
<\r>tvp5150: CC   data reg 0x90 = 00 00 00 00 <\n>
<\r>tvp5150: WSS  data reg 0x94 = 00 00 00 00 00 00 <\n>
<\r>tvp5150: VPS  data reg 0x9a = 00 00 00 00 00 00 00 00 <\n>
<\r>tvp5150: VPS  data reg 0xa2 = 00 00 00 00 00 <\n>
<\r>tvp5150: VITC data reg 0xa7 = 00 00 00 00 00 00 00 00 00 <\n>
<\r>tvp5150: Line mode reg 0xd0 = 00 ff ff ff ff ff ff ff <\n>
<\r>tvp5150: Line mode reg 0xd8 = ff ff ff ff ff ff ff ff <\n>
<\r>tvp5150: Line mode reg 0xe0 = ff ff ff ff ff ff ff ff <\n>
<\r>tvp5150: Line mode reg 0xe8 = ff ff ff ff ff ff ff ff <\n>
<\r>tvp5150: Line mode reg 0xf0 = ff ff ff ff ff ff ff ff <\n>
<\r>tvp5150: Line mode reg 0xf8 = ff ff ff ff <\n>
<\r><\n>



Die Info über die Dyn Rows / Cols zeigt nur Nullen. Eventuell ein 
Problem mit meinem 5150 ?

Hat einer direkt ne Idee? Grüße

PS: 3,3V , 1,8V vorhanden. (Moodlight läuft ja auch)
Eingangskapazitäten am 5150 (1,8V und 3,3V auf 0,47uF erhöht)
OP #3878247
Lesenswert?

Pat Wat schrieb:
> Die Info über die Dyn Rows / Cols zeigt nur Nullen. Eventuell ein
> Problem mit meinem 5150 ?

Wenn die Dyn-Infos alle 0 sind, ist offensichtlich kein Bild da. Bist du 
sicher, dass Video anliegt und am richtigen Eingang?. Die LEDs auf dem 
Discovery sollten auch was tun:
   ROT     toggelt mit Hsync
   ORANGE  toggelt mit Vsync
   BLAU    toggelt mehrfach in der main() bei Aufruf diverser Funktionen
   GRÜN    toggelt mit Flanken vom IR-Decoder

Insbesondere ROT und Orange zeigen, ob die Sync Signale am STM32 
ankommen.

pitschu
#3878736
Lesenswert?

Nope, hat überhaupt nichts mehr getoggelt. Bildsignal sollte anliegen. 
Mit 2 verschiedenen Quellen getestet. (Wii und gewandeltes HDMI Signal)

Hab jetzt mal testweise den TVP5150 getauscht und werde das heute Abend 
nochmal testen ;)

Er locked auch auf 0E beim gewandelten HDMI Signal, bzw. auf 6E beim 
Videosignal der Wii. Erkennt auch, dass an X3 bzw X4 ein Videosignal 
anliegt und switched auch automatisch auf die entsprechende 
Signalquelle.

Danke für die schnelle Antwort / heute Abend Runde 2 :)

Gruß
Patrick
#3880972
Lesenswert?

Nachtrag Runde 2: Sieht so aus als hätte ich mir das DCMI Interface 
abgeschossen.
Den PXL_CLK bzw. SCLK konnte ich dank mangelndem Heimequipment nicht 
überprüfen.
Die rote / orangene LED sollten aber trotzdem toggeln, was bei mir nicht 
der Fall ist.

Im angehängten Bild sieht man, dass zumindest VSync und HSync 
funktionieren sollten.

Ich melde mich mit neuen Ergebnissen, wenn der STM32F407-Ersatz 
angekommen ist ... -.-

Gruß

PS: Ja, eigentlich hätte ich auch nen Screenshot machen können und den 
benutzen... aber ab und zu ist das wort Screenshot halt doch noch 
wörtlich zu nehmen :P Sorry für den krummen Anhang
Angehängte Dateien:
#3888004
Lesenswert?

Guten Abend,

Chip getauscht.
Funktioniert alles :)

Ich mach mich jetzt die Tage mal dran alle wichtigen Punkte ein bisschen 
zusammenzufassen und das ganze Projekt / Kommentare in einen Ordner zu 
packen (evtl noch meine minimal überarbeitete Eagle PCB dazu)

Gruß
Patrick

PS: Super Community hier :)
Angehängte Dateien:
#3910576
Lesenswert?

Hallo Peter,

danke für die Doku.

Heiße Frage los:
Kriegt man das irgendwie hin, das nach Poweron der zulezt eingestellte 
Mode aktiviert bleibt? Leider muß ich immer erst nach der Fernbedienung 
fischen, damit das Ambilight angeht. Evtl. mache ich ja auch was 
falsch!?

Ambilight ist in 99% aller Fälle die Hintergrundbeleuchtung meiner 
Wahl....

Danke und Gruß,
Thilo
Gast #3910623
Lesenswert?

Hallo Peter,

ich hab das so gelöst, dass nach dem PowerOn immer direkt in den 
Ambilight-Modus geschallten wird.
Hierzu einfach die main.c in Zeile 50
von:
1
mainMode_e  mainMode =     MODE_STANDBY;
ändern in:
1
mainMode_e  mainMode =     MODE_AMBILIGHT;

@ pitschu:
Vielen lieben Dank für deine Doku, habe sie gerade erst entdeckt :-) !

Gruß
Patrick
OP #3911359
Lesenswert?

Hallo zusammen,

Leitner schrieb:
> Hierzu einfach die main.c in Zeile 50
> von:mainMode_e  mainMode =     MODE_STANDBY;
> ändern in:mainMode_e  mainMode =     MODE_AMBILIGHT;

Eine andere Variante wäre, den mainMode mit in die zu flashenden 
Parameter aufzunehmen. Dazu wird einfach in FlashParams.c folgende Liste 
ergänzt:
1
#define FLASH_VERSION      135
2

3

4
const flashParam_t flashParams[] = {
5
   {(uint8_t*)&rgbImageWid  , sizeof (rgbImageWid)},
6
.....
um den folgenden Eintrag ergänzt:
1
   {(uint8_t*)&mainMode, sizeof (mainMode)}

Dann sollte man noch die FLASH_VERSION um eins erhöhen, um einen 
Komplettupdate beim ersten Einschalten zu forcieren.

Ab dann wird der Mode mit ins Flash geschrieben und damit nach dem 
Power-Up auf den zuletzt gültigen Wert gesetzt.
#3911681
Lesenswert?

Peter Schulten schrieb:
> Eine andere Variante wäre, den mainMode mit in die zu flashenden
> Parameter aufzunehmen. Dazu wird einfach in FlashParams.c folgende Liste
> ergänzt:

Etwas in der Art hat mir vorgeschwebt. Muss man sich bei Anderungen 
dieses Wertes noch Gedanken machen oder passiert das wegschreiben ins 
Flash durch den Eintrag in die Liste dann auch automatisch?

Danke und Gruß,
Thilo
OP #3912015
Lesenswert?

Thilo Haala schrieb:
> ... oder passiert das wegschreiben ins
> Flash durch den Eintrag in die Liste dann auch automatisch?

Das passiert automatisch. Sobald sich eine der Variablen, die im 
Flash-Parameterblock verzeichnet sind, ändert, wird der ganze Block 
geflashed. Die Überprüfung, ob sich was geändert hat, läuft permanent. 
Wenn sich nach 8 Sekunden dann nichts mehr ändert, wird geflashed. Da 
der STM32F4 kein EEPROM hat und sich das PLASH nur blockweise löschen 
lässt, habe ich diese Parameterblock-Variante gewählt statt 
Einzelvariablen zu speichern. Der Verwaltungsoverhead ist daher minimal.

Pitschu
#3924802
Lesenswert?

So, Hallo erstmal :)

In den letzten Wochen nicht viel Zeit gehabt... :/

Es wurde hier mal ein Fehler erwähnt, bei dem nach einiger Laufzeit ein 
Speicher überlief.

Ich habe jetzt momentan den interessanten Fehler gehabt, dass nach ca. 1 
Tag am Strom die Farben nicht mehr passen (schwarze Bildbereiche werden 
in einem lila dargetstellt)

Jemand etwas ähnliches beobachtet?

Gruß
OP #3930334
Lesenswert?

Pat Wat schrieb:
> Ich habe jetzt momentan den interessanten Fehler gehabt, dass nach ca. 1
> Tag am Strom die Farben nicht mehr passen (schwarze Bildbereiche werden
> in einem lila dargetstellt)

Konntest du das Problem eingrenzen? Bei mir läuft das AL seit Monaten 
korrekt durch. Es wird nie ausgeschaltet, sondern geht nur in den 
Standby. Bei dem von dir genannten Effekt würde ich mal auf einen 
Ausfall der grünen LEDs tippen. Gehen die grünen Indikator-LEDs bei 
Bedienung durch die FB an und blinken die Standsby-LEDs?

pitschu
Gast #3930795
Lesenswert?

Hallo.
Ich las vor einiger Zeit in einem anderen Forum, daß 24p-Signale durch 
die derzeit zu kaufenden HDMI-Splitter bzw. HDMI2AV Converter nicht 
korrekt verarbeitet werden.
Ist dem so? Bleibt das Ambilight bei BluRay-Spielfilme mit 24p Output 
"stumm"?

Gruß
Bert
#3934746
Lesenswert?

Peter Schulten schrieb:
> Pat Wat schrieb:
>> Ich habe jetzt momentan den interessanten Fehler gehabt, dass nach ca. 1
>> Tag am Strom die Farben nicht mehr passen (schwarze Bildbereiche werden
>> in einem lila dargetstellt)
>
> Konntest du das Problem eingrenzen? Bei mir läuft das AL seit Monaten
> korrekt durch. Es wird nie ausgeschaltet, sondern geht nur in den
> Standby. Bei dem von dir genannten Effekt würde ich mal auf einen
> Ausfall der grünen LEDs tippen. Gehen die grünen Indikator-LEDs bei
> Bedienung durch die FB an und blinken die Standsby-LEDs?
>
> pitschu

Ich versuch das Problem nochmal zu reproduzieren, evtl. hatte der 
anwesende Besuch auch nur am HDMI Converter rumgespielt. :)
Ist seit dem auch nicht mehr aufgetreten. Über den Jahreswechsel werde 
ich wohl noch einige intensive Testläufe machen. Den Herr der Ringe 
Probelauf hat es auf jeden Fall beeindruckend bestanden :)


Achja habe momentan noch blanke und komplett bestückte PCB´s (der PullUp 
sitzt jetzt auf der Rückseite) übrig...

Wer also will - melden. (hab noch 2 Zusatzbohrungen drauf, bei den 
RCA-Jacks, da die ursprünglich bestellten nicht mehr lieferbar waren. 
(für diese hier ist es jetzt passend: 
http://www.ebay.de/itm/331262346929?_trksid=p2059210.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT 
)

Gruß
Pat
Angehängte Dateien:
#3935803
Lesenswert?

Passt scho. Bevor ich angefangen hab, dacht ich noch "solltest 
vielleicht mal im Forum nach Platinen fragen - ach des lass ich sein, 
hat ja eh keiner mehr ne Platine und meine Bauteile passen eh ned und 
des wird scho ned so heftig mit dem fädeln..." Tjoa falsch gedacht, hät 
ich mal besser nachgefragt.

Trotzdem funktionierts, danke pitschu für die tolle Arbeit!

Edit: keine Ahnung warum das Bild am Kopf steht
Angehängte Dateien:
#3973914
Lesenswert?

Hallo,

Gsunds Neues Jahr erstmal.

ich bin neu hier habe aber schon oft hier drin gestöbert, weil es 
einfach super tipps und Projekte gibt.

Dies hier interessiert mich so brennend das ich mich jetzt auch mal 
angemeldet habe, ich hoffe ich kann auch mal zu was beitragen.

Meine Fragen: Kann man das auch mit LPD8806-Ledketten betreiben?

Wer dies das richtige Board:
http://www.ebay.de/itm/151321456572?_trksid=p2060778.m2763.l2649&ssPageName=STRK%3AMEBIDX%3AIT

und ich hoffe frankp hat noch eine Platine :)


LG EDDE
#3978763
Lesenswert?

Hallo,

danke mal an alle für dieses geniale Projekt.

@Pat Teile sind angekommen, so wie es jetzt ist funzt es leider nicht 
mit meiner Led-Kette.

Vielleicht hat ja jemand dies schon mal mit LPD8806 zum laufen gebracht. 
Mit dieser Mµ habe ich noch keine Erfahrung aber ich bin lernwillig :) 
Mit AVR ATMega/Tiny habe ich schon viel gemacht. Bin mir sicher wenn ich 
einmal eine mir passende Entwicklungsumgebung habe klappts auch mit dem 
STM32 :). Vielleicht kann mir hier ja jemand eine Empfehlung abgeben. 
Eclipse ist grad nicht so mein ding. An das AVR-Studio 4... hatte ich 
mich schon richtig gewöhnt :). Naja ist vielleicht auch nur eine 
Einstellungssache.
Beruflich bin ich Software-Entwickler und Programmiere mit Delphi XE7


Erweiterungswünsche/Vorschläge habe ich auch schon :) und kann hierfür 
Tipps gebrauchen.
Ein Lan/WLan mit dem man alle Einstellungen macht und Philips-HUE 
steuern kann.

Eventuell gibt es hier auch Erfahrung welche Hardware man dazu am besten 
verwendet. Bestimmt gibt es dazu auch schon diverse Libraries.

Beste Dank schon mal für alles

LG EDDE
#4003617
Lesenswert?

Danke Wowa,

gestern hat China angeklopft und mir das Teilchen geliefert.

Meine Led-Kette konnte ich leider nicht anschließen, braucht 2 
Steuerleitungen. Aber jetzt habe ich auch da das richtige.

Und das funtzt jetzt auch :)

Nun muss ich mir mal über eine Entwicklungsumgebung Gedanken machen.
Da ich alles auf VM installiere ist mir OS soweit egal. Kann mir jemand 
Tipps geben welches Win 7,8,8.1 32/64Bit und was für 
Entwicklungsumgebung da für Anfänger der Mµ am besten ist?

Gibt es auch schon Libraries für ESP8266 ?


Besten Dank schon mal

LG EDDE
Gast #4003674
Lesenswert?

Hallo EDDE,

erstmal würde ich das Ding updaten:
http://blog.electrodragon.com/cloud-updating-your-wi07c-esp8266-now/
Danach kannst du das Modul mit einem Befehl auf den aktuellsten Stand 
bringen. (Das Modul ladet das Update vom Espressif Server und 
installiert es von selbst)

Bei mir waren die RX/TX Pins 5V-tolerant. VCC ist NICHT 5V-tolerant!


Dafür brauchst du keine Library, du musst nur die ganzen AT-Kommandos 
kennen:
http://www.mikrocontroller.net/articles/ESP8266
Unten im Artikel sind einige Links dazu aufgeführt.

Bei mir ist das WLAN Modul an dem Trockner und Waschmaschine im Keller 
dran und Meldet mir aufs Handy (Pushbullet, Push Notifications) ob der 
Kondenswasserbehälter voll ist oder Trockner/Waschmaschine das Programm 
beendet hat.
(http://forum.arduino.cc/index.php?topic=287852.0) hier der Code...

Man müsste eine Handy-App schreiben, die per UDP/TCPIP die Parameter mit 
Ambilight austauschen. (Habe keine Ahnung von Android/Java)

Hoffe es Hilft dir weiter!
#4069904
Lesenswert?

Danke Wowa für Deine Antwort!!
Lang lang hat es gedauert bis ich mich hier für die Tipps Bedanke.
Erstmal Entschuldigung dafür, aber wie es so ist 1. kommt es anders 2. 
als man denkt. Als Entwicklungsumgebung werde ich mich wohl für SiSy 
entscheiden und dann damit demnächst anfangen. Fragen folgen dann 
bestimmt :)

Besten Dank noch mal

LG EDDE
#4111178
Lesenswert?

Sind noch Platinen vorhanden? Ich würde meinem STM32 Board gerne etwas 
zu tun geben.

Wenn ich das jetzt richtig gelesen habe benötige ich:
- STM32F4 Disovery (vorhanden)
- 5V Netzteil (vorhanden)
- Optional: HDMI-Splitter (AV-Receiver mit 2x HDMI Ausgang vorhanden)
clk_rvr_id=822796253073&rmvSB=true)
- HDMI2AV 
(http://www.aliexpress.com/item/Standard-HDMI-Interface-Mini-HD-Video-Converter-Box-HD-To-RCA-AV-CVSB-L-R-Video/32319808733.html)
- 2x Cinch-Buchse (http://www.ebay.de/itm/331262346929?
- WS2812 LED Strip mit maximal 60 LEDs/m bei 1,2m breite = 72 LEDs 
horizontal
Idealerweise mit schwarzem PCB:
http://www.aliexpress.com/item/DC-5V-WS2812B-2812-IC-60LEDs-M-SMD-5050-RGB-Led-Strip-Light-addressable-Dream-Color/32320831854.html
http://www.aliexpress.com/item/60LEDs-2812-2812B-Pixel-5050RGB-SMD-Built-in-Digital-Color-Flexible-LED-Strip-Light-Black-Board/32283915946.html

http://www.aliexpress.com/item/DC-5V-WS2812B-2812-IC-60LEDs-M-SMD-5050-RGB-Led-Strip-Light-addressable-Dream-Color/32320831854.html

Habe ich etwas vergessen?

Frage: wie lange darf die Verbindung zwischen HDMI-AV-Wandler und 
Platine sein? Bzw. die Datenleitung zu den LEDs?
Mein TV hängt an der Wand. Entweder ich verpacke die ganze Eletronik im 
Rack oder hinter dem TV. Dann ist sie allerdings sichtbar. Die 
Entfernung zwischen Rack und TV liegt aber bei ca. 2m (Kabellänge).

Evtl. würde sich auch ein Wiki-Artikel zum Projekt lohnen. Persönlich 
finde ich das deutlich spannender/gelungener als die ganzen Raspberry Pi 
Lösungen :)
Gast #4111259
Lesenswert?

Ed. De. schrieb:
> Nun muss ich mir mal über eine Entwicklungsumgebung Gedanken machen.
> Da ich alles auf VM installiere ist mir OS soweit egal. Kann mir jemand
> Tipps geben welches Win 7,8,8.1 32/64Bit und was für
> Entwicklungsumgebung da für Anfänger der Mµ am besten ist?

Also im unten genannten Link gibt es eine Anleitung wie das Projekt von 
Pitchu unter Eclipse kompiliert werden kann. Somit kann man auch 
Änderungen durchführen.
Beitrag "Re: Ambilight mit STM32F4discovery und TVP5150AM1"
#4112008
Lesenswert?

Hallo,

@Bernd  Danke das hätte ich mal früher lesen sollen. Dann hätte ich mir 
den krampf mit Sisy und 200€ sparen können. Meiner Meinung nach der 
grösste mist was es in der Sache gibt.
Habe mir grade die Text-Datei geladen und werde mich morgen mal 
intensive damit beschäftigen. Immo tue ich mich noch total hart mit dem 
STM32, will mir gar nicht in Kopf, mit den AVR48-328 habe ich mich 
irgendwie leichter getan. Naja beim alten Mann dauert es immer ein wenig 
länger :)


LG EDDE
#4184501
Lesenswert?

Andreas K. schrieb:
.........
> Idealerweise mit schwarzem PCB:
> 
http://www.aliexpress.com/item/DC-5V-WS2812B-2812-IC-60LEDs-M-SMD-5050-RGB-Led-Strip-Light-addressable-Dream-Color/32320831854.html
> 
http://www.aliexpress.com/item/60LEDs-2812-2812B-Pixel-5050RGB-SMD-Built-in-Digital-Color-Flexible-LED-Strip-Light-Black-Board/32283915946.html
>
> 
http://www.aliexpress.com/item/DC-5V-WS2812B-2812-IC-60LEDs-M-SMD-5050-RGB-Led-Strip-Light-addressable-Dream-Color/32320831854.html
>
> Habe ich etwas vergessen?

Bei nächsten TV Kauf einen Phillips holen. Ich schätze der 
Preisunterschied ( vergleichbare Geräte ) liegt Maximum 200 Euro was 
evtl. ein Phillips mehr kostet mit super Ambilight ! Das gebastelte 
kommt mit Sicherheit nicht dran. ( habe selber einen 55er der 9er Serie, 
super Teil )
Gast #4184685
Lesenswert?

Erstens: Du kannst ja nicht mal den Namen des Herstellers deines 
Fernsehers schreiben, aber dafür manchen die Laune versauen.

Zweitens: Sowas kannst du in ein Philips-Forum reinschreiben. Hier gehts 
nicht um Kaufberatung und Benchmarks. Außerdem gibt es KEINE 
"standalone"-Lösung zum NACHRÜSTEN auf dem Markt! Und ich meine nicht 
die Raspberry/PC Lösung etc. sowas braucht HIER keiner....

Beispiel: Wenn dein Auto keine Telefon-Freisprech-Funktion hat, du aber 
gerne diese haben willst, dann kaufst du dir doch kein neues/aktuelleres 
Fahrzeug welches das kann, sondern rüstest es nach?

Drittens: Ich finde das Ergebnis dieser Schaltung hervorragend, außerdem 
heißt es meistens in diesem Forum: der Weg ist das Ziel

Hiermit möchte ich mich bei den Leuten Bedanken, die ihre Ideen und 
deren Umsetzungen mit uns teilen.
OP #4184748
Lesenswert?

Hallo Thomas,
eigentlich habe ich es gebaut weil ich eben keinen Philips mehr hatte, 
aber das AL behalten wollte. Die bauen zweifelsohne gute Fernseher.
Mich würde interessieren, was am Original AL besser ist, bzw. was dem 
Slebstbau noch fehlt. Die Selbstbauer hier sind an Optimierungen mit 
Sicherheit interessiert. Hast du ein paar Hintergrundinfos zum 
Philips-AL (technische Feinheiten ...)

pitschu
#4184756
Lesenswert?

Peter S. schrieb:
> keinen Philips mehr hatte,

Also kennst die Sache.
https://www.youtube.com/watch?v=D7OwK8gMwWA

habe am Anfang kurz überlegt es nachzubauen, aber so sauber wie das 
"originale" ist, glaube ich, ist es der Nachbau nicht ( Was kostet 
insgesamt der Nachbau ? und wollte keine "Elktronikgedönst um den TV 
herum haben )

Ich will keine Werbung machen, aber ich finde in der Preisklasse ( für 
mich ) hat die 9er Serie die beste Bild Qualität.
OP #4184880
Lesenswert?

Das Philips-AL im Video scheint mir nicht sehr hoch auflösend zu sein - 
links und rechts sieht man nur 2 bis 3 Lichtkleckse, oben vermutlich 3 
bis 4 und unten ist gar nichts. Bei dem Selbstbau gehen links und rechts 
bis zu 60 und oben/unten jeweils bis zu 96. Damit wird das Bild 
rundherum wirklich detailliert auf die Wand projiziert. Die geringe 
Auflöung hatte mich bei meinem Philips etwas enttäuscht. Wieviele Leds 
sind denn da eigentlich verbaut?

pitschu
Gast #4187056
Lesenswert?

Muss leider die Reservierung zurückziehen. Er hat wohl im Moment kein 
Interesse.

Trotzdem, vielen Dank für dein Angebot. Du wirst es sicher schnell los 
werden.

Gruß

Thilo H. schrieb:
>>>> Auf Funktion geprüft?
>
> Ja. Die Version die geflashed ist aber nicht die neueste und enthält
> eine mod. Ich habe nämlich den Einspeisepunkt rechts unten (von Hinten
> gesehen).
>
> Aber Du musst es ja sowieso anpassen an die Konf. für deinen Bekannten.
>
> Gruß Thilo
Gast #4438911
Lesenswert?

Hallo zusammen,
Wegen Umstieg auf original Philips und fehlender Zeit verkaufe ich meine 
2 Sets Ambilight.

1. Set beinhaltet das STM32F4, das bestückte und getestete 555 Board, 
HDMI Splitter, HMDI-> Analog Converter, 5V 5A Schaltnetzteil (Meanwell) 
und 5m WS2812B (neu) 60 LEDs/m und Gehäuse.

2.Set beinhaltet das STM32F4, das bestückte und getestete 555 Board und 
einen ALU-Profil U Rahmen mit darin verlegten WS2812B 60LEDs/m passend 
für TV ab 42 Zoll (wurde bei 55 Zoll verwendet).

Bitte nur seriöse Angebote unterbreiten. Fotos kann ich bei Interesse 
per Mail versenden.

Danke nochmals an Pitschu für dieses coole Projekt.
Gast #4567500
Lesenswert?

Hallo Pitschu und der Rest des Forums,

das Ambilight läuft nun seit fast einem Jahr und ich bin überaus 
zufrieden damit! Vielen Dank nochmals!

Ich hätte eine Frage und damit gleichzeitig eine Bitte:

...erst zum Anlass: Ich betreibe das Ambilight wie wahrscheinlich andere 
auch mit einem HDMI-Splitter und HDMI2AV-Converter. Sobald der Converter 
kein Signal mehr bekommt -> HDMI-Quelle (TV/Konsole/etc) ausgeschaltet, 
generiert der Converter ein statisches Test-Bild welches aus 
verschiedenfarbigen, vertikal angeordneten Streifen besteht. Dann muss 
ich quasi manuell den Ambilight-Controller ausschalten.

Ist es (mit relativ geringem) Aufwand möglich, bei einem statischem 
FBAS-Signal einen Timer hochzählen zu lassen und nach einer bestimmten, 
einstellbaren Zeit den Ambilight-Controller dazu bringen alle LEDs 
auszuschalten? Da das Eingangssignal ein analoges Signal ist, wird es 
wahrscheinlich schwierig sein ein statisches Bild zu erkennen? Rauschen 
etc...
Hat jemand die Daten von einem Standbild angesehen, ob diese auch 
statisch sind?

Ich bin mit der Software nicht so fit, und bitte deshalb jemanden, dem 
das evtl. leicht fällt umzusetzen?

PS: Bild aus dem Internet, sieht aber ähnlich/gleich aus

Gruß
Gast #4606626
Lesenswert?

Hi Zoe Chloe,

as I understand, you want to use the board you mentioned instead of the 
STM32F4discovery. Generally this should be possible as the processors 
are nearly the same. The only difference is, that the STM32F407VGT6 on 
the discovery board has 1024kB Flash and the STM32F407VET6 only has 
512kB. This does not matter as the Ambilight uses less than 512kb Flash. 
Another thing is: Are the I/O Pins needed available on your board. You 
should check that (have a look at the schematic in the very first post 
of this thread).

pitschu
Gast #4606716
Lesenswert?

MFG, ich denke nicht, dass Sie Zeit haben, mir zu antworten
erste danke
-Ich Will einige dümmer zu stellen things.If ich den Code zum STM32F4 
Board laden, wird der Code Aufenthalt im Board für immer?
-Wenn ich möchte die LED-Reihe (oben, unten, links, rechts Rand) zu 
ändern, was ich zu tun habe?
-die Fernbedienung können Sie auf dem Dokument zeigen (pdf), kann es nur 
Wert des schwarzen Strichs ändern erkennen, nicht die LED-Nummer?
-Ich Eagle Ambilight-Board-Datei verwenden, um die Karte zu drucken, ist 
das ein Problem?
(Weil ich fand einige Updates im Thema)
-in dem Bild, das ich hochgeladen habe, werde ich habe genug I / O-Pin, 
dass Sie diese Ambilight Arbeit zu machen erwähnt?
Ich hoffe, dass Sie mir antworten, weil ich niemanden gefunden zu fragen

Danke <3
Angehängte Dateien:
Gast #4606927
Lesenswert?

I do not think you have time to answer me
but first thank you!!


after I've read your document.I just have 1 question
-All the values of L,W,T,H I dont have to care about because it's good 
for you that means It's also good for me?
All I need to do is change the led number (P and R) and I can use the 
remote to change it after I have uploaded your code to the board?
OP #4607038
Lesenswert?

Zoe Chloe schrieb:
> after I've read your document.I just have 1 question
> -All the values of L,W,T,H I dont have to care about because it's good
> for you that means It's also good for me?
> All I need to do is change the led number (P and R) and I can use the
> remote to change it after I have uploaded your code to the board?

The L,W,T and H parameters depend on your TV. P + R depend on how many 
LEDs your WS2812 stripe has. So first you should upload the code to your 
board, then set P and R via a terminal conection. Then you may adjust 
the L,W,T and H parameters according to your TV picture.
Gast #4607092
Lesenswert?

Peter S. schrieb:
> Zoe Chloe schrieb:
>> after I've read your document.I just have 1 question
>> -All the values of L,W,T,H I dont have to care about because it's good
>> for you that means It's also good for me?
>> All I need to do is change the led number (P and R) and I can use the
>> remote to change it after I have uploaded your code to the board?
>
> The L,W,T and H parameters depend on your TV. P + R depend on how many
> LEDs your WS2812 stripe has. So first you should upload the code to your
> board, then set P and R via a terminal conection. Then you may adjust
> the L,W,T and H parameters according to your TV picture.

thank you
so which software and port should I use to open the terminal connection
my board has an usb otg port,should I use it as virtual com port to open 
terminal connection?
OP #4607106
Lesenswert?

Waldemar schrieb:
> Ist es (mit relativ geringem) Aufwand möglich, bei einem statischem
> FBAS-Signal einen Timer hochzählen zu lassen und nach einer bestimmten,
> einstellbaren Zeit den Ambilight-Controller dazu bringen alle LEDs
> auszuschalten? Da das Eingangssignal ein analoges Signal ist, wird es
> wahrscheinlich schwierig sein ein statisches Bild zu erkennen? Rauschen
> etc...
> Hat jemand die Daten von einem Standbild angesehen, ob diese auch
> statisch sind?

Hallo Waldemar,
sorry, dass ich Deinen Post übersehen habe, ich hatte zwischendurch 
Urlaub. Zu Deinem Anliegen: Die Erkennung eines statischen Bildes müsste 
einfach möglich sein. Die Idee wäre, über eine Art Screenshot ein Bild 
der internen 64x40 Matrix im Flash zu Speichern (über einen IR-Button) 
und während der normalen Bearbeitung mit dem aktuellen Bild zu 
vergleichen. Wenn sich über mehrere Sekunden die Werte aller Matrixwerte 
um weniger als z.B. 10% zum Vergleichsabbild ändern, wird das Screenshot 
Bild angezeigt und das AL geht in den Standby. Da ich selbst das AL ohne 
HDMI Converter betreibe, habe ich z.Z. wenig Motivation, das umzusetzen. 
Evtl. ist jemand anderes bereit, sich dieses Problems anzunehmen.

Besten Gruß
pitschu
#4608623
Lesenswert?

Peter S. schrieb:
> Waldemar schrieb:
>> Ist es (mit relativ geringem) Aufwand möglich, bei einem statischem
>> FBAS-Signal einen Timer hochzählen zu lassen und nach einer bestimmten,
>> einstellbaren Zeit den Ambilight-Controller dazu bringen alle LEDs
>> auszuschalten? Da das Eingangssignal ein analoges Signal ist, wird es
>> wahrscheinlich schwierig sein ein statisches Bild zu erkennen? Rauschen
>> etc...
>> Hat jemand die Daten von einem Standbild angesehen, ob diese auch
>> statisch sind?
>
> Hallo Waldemar,
> sorry, dass ich Deinen Post übersehen habe, ich hatte zwischendurch
> Urlaub. Zu Deinem Anliegen: Die Erkennung eines statischen Bildes müsste
> einfach möglich sein. Die Idee wäre, über eine Art Screenshot ein Bild
> der internen 64x40 Matrix im Flash zu Speichern (über einen IR-Button)
> und während der normalen Bearbeitung mit dem aktuellen Bild zu
> vergleichen. Wenn sich über mehrere Sekunden die Werte aller Matrixwerte
> um weniger als z.B. 10% zum Vergleichsabbild ändern, wird das Screenshot
> Bild angezeigt und das AL geht in den Standby. Da ich selbst das AL ohne
> HDMI Converter betreibe, habe ich z.Z. wenig Motivation, das umzusetzen.
> Evtl. ist jemand anderes bereit, sich dieses Problems anzunehmen.
>
> Besten Gruß
> pitschu


Danke für die Antwort! Ich hoffe es finden sich noch Leute, die das 
selbe Anliegen/Problem haben.

Darf ich fragen mit was du dein Ambilight betreibst, bzw. woher du dein 
Video-Signal abzweigst (wenn nicht aus HDMI-Conv.). Mein Fernseher gibt 
hinten an der SCART-Buchse leider nur das DVB-C Signal wieder und keine 
Spiegelung des aktuellen Bildes, d.h. wenn ich am Fernseher eine 
Ext-Quelle ansehe gibt er mir trotzdem nur Antennen-Signal wieder... 
(SAMSUNG)

Es wäre doch mal eine Idee eine neue HW-Version zu erstellen und 
HDMI+FBAS(als zweiter Eingang) und dann aber gleich den STM-uC auf eine 
Platine zu implementieren. Ich würde mich für den HW-Teil/Layout 
bereitstellen. An der Software scheiterts bei mir leider...

Gruß
Gast #4611330
Lesenswert?

Waldemar H. schrieb:
> Darf ich fragen mit was du dein Ambilight betreibst, bzw. woher du dein
> Video-Signal abzweigst (wenn nicht aus HDMI-Conv.). Mein Fernseher gibt
> hinten an der SCART-Buchse leider nur das DVB-C Signal wieder und keine
> Spiegelung des aktuellen Bildes, d.h. wenn ich am Fernseher eine
> Ext-Quelle ansehe gibt er mir trotzdem nur Antennen-Signal wieder...
> (SAMSUNG)

Ich nutze einen VU+ Receiver, welcher einen FBAS-Ausgang hat. Der zweite 
AL-Eingang hängt an einem BlueRay Player, auch mit FBAS Ausgang.
Gast #4622552
Lesenswert?

hello pitschu
is there any different between upload the code to stm32f4 board using st 
link utility(using hex file) and upload the code using eclipse?

I'have uploaded the code using st link(hex file),will it fully 
function?(like usb VCP)??
thank you,wait for your answer
Gast #4625693
Lesenswert?

The AL software uses UART3. TX/RX are on pins PD8+9. What do you expect 
to be reported on these pins when no hardware (like TVP) is connected to 
the other pins?
Did you check the setting of USB/UART in the sources? When USB is 
selected, nothing is reported on UART3 and vice versa.
Gast #4627311
Lesenswert?

thanks pitschu for replying me
I'v test uart 4 by an application (hello world) and it works fine
do you mean with AL software, i have to connect tvp 5150 board to use it 
throught terminal?
thanks
Gast #4640452
Lesenswert?

The baudrate should be set to 115200. Do you have an oscilloscope to 
check vrious signals (like I2C to the TVP or the LED port pins which are 
mounted on a discovery board)? Did you check the USE_USB setting in the 
sources/project settings? If it is set, nothing is sent to the USART. It 
has to be #undef for USART output.
I can't help with the spare information you gave us. Please post the 
schematic of your hardware.
Gast #4640553
Lesenswert?

thanks pitschu.I have a tons of thing wanna send you.can you give me an 
email
pls
I just upload your hex.I dont modify anything at all
and all the pin of my mini stm32f4 is sync to yours
give me the email.pls.I will give you schematic.and anything you need
Gast #4641244
Lesenswert?

the steps that I have done
1:upload hex file(1.2 version) to stm32f4 board with stlink ultility
2:solder the tvp5150am1 board
3:connect the tvp5150 board to stm32f4 board
4:plugin power supply 5V to the board
5: use UART 3 (TX to PD9, RX to PD8) connect to computer.the computer 
show COM port 4
6:oppen Putty and select COM4-serial-115200 baud rate
 open putty and show up this black screen.no respone
Angehängte Dateien:
#4642414
Lesenswert?

Peter S. schrieb:
> I just tried the HEX attached in this post on a brand new STM32F4dicso
> board. I made some changes for your CPU (only 512K flash). I'm sure it
> works and USART out is on PD8. Please use this HEX and tell what's
> happening.
>
> pitschu

thankkkkkkkkk yooooooooooooooou.fnatic vs liquid is live now.I will try 
it soon
give me you paypal email.I will donate $5 each time you reply me
love you <3
#4642677
Lesenswert?

Peter S. schrieb:
> I just tried the HEX attached in this post on a brand new STM32F4dicso
> board. I made some changes for your CPU (only 512K flash). I'm sure it
> works and USART out is on PD8. Please use this HEX and tell what's
> happening.
>
> pitschu

report after flash this hex

1-flash using stlink ultility success
2-connect usart3 using pd8 and pd9: no usart report
3-connect usart 3 alternative(pc10 pc11): no usart report
4-connect usart 3 alternative(pc10 pc11) with boot 0 on high: report 
delay but show like this
Angehängte Dateien:
#4642678
Lesenswert?

this is stlink report

10:43:02 : ST-LINK SN : 56FF6A067182515120381667
10:43:02 : ST-LINK Firmware version : V2J27S6
10:43:02 : Connected via SWD.
10:43:02 : SWD Frequency = 4,0 MHz.
10:43:02 : Connection mode : Normal.
10:43:02 : Debug in Low Power mode enabled.
10:43:02 : Device ID:0x413
10:43:02 : Device flash Size : 512KBytes
10:43:02 : Device family :STM32F405xx/F407xx/F415xx/F417xx
10:43:18 : Binary File closed.
10:43:41 : [Ambilight-STM32F4-GNUARM-V1.2.hex] opened successfully.
                  Address Ranges [0x08000000 0x080001D4] [0x080001E0 
0x08014F8C]
10:43:41 : [Ambilight-STM32F4-GNUARM-V1.2.hex] checksum : 0x007E8E52
10:43:47 : Memory programmed in 3s and 281ms.
OP #4642866
Lesenswert?

The AL software defintly uses pin mapping 3 (PD8/9) for USART3, so the 
other mappings don't care. So, there shouldn't be any output on pins 
PB10/11. These pins are not used by the AL software. I don't think that 
you flashed the HEX file in the right way.
I'm missing massages like "... erasing flash ..." in your ST-Link log 
report. Are you sure that you erased the flash before flashing the HEX 
file?
#4642880
Lesenswert?

Peter S. schrieb:
> The AL software defintly uses pin mapping 3 (PD8/9) for USART3, so the
> other mappings don't care. So, there shouldn't be any output on pins
> PB10/11. These pins are not used by the AL software. I don't think that
> you flashed the HEX file in the right way.
> I'm missing massages like "... erasing flash ..." in your ST-Link log
> report. Are you sure that you erased the flash before flashing the HEX
> file?

I will try to earse before flash again.thank you <3
#4642901
Lesenswert?

Peter S. schrieb:
> The AL software defintly uses pin mapping 3 (PD8/9) for USART3, so the
> other mappings don't care. So, there shouldn't be any output on pins
> PB10/11. These pins are not used by the AL software. I don't think that
> you flashed the HEX file in the right way.
> I'm missing massages like "... erasing flash ..." in your ST-Link log
> report. Are you sure that you erased the flash before flashing the HEX
> file?

I erased the flash then flash the hex.still the same.only the pc10 pc11 
work
is there any chance my stm32f4 board dont have usart on pd8 
pd9(manufactor or firmware problems?)
I've ordered a oscilloscope
I have to make this work
OP #4642986
Lesenswert?

Be aware that the BOOT0 pin has to be low to boot from flash. I think 
your board boots from the system bootloader which uses several sources 
to search for a programming device and you see some output on PB10/11 
and PC10/11.
Read the datasheet on page 55:
Embedded bootloader
The embedded bootloader mode is used to reprogram the Flash memory using 
one of the
following serial interfaces:
● USART1(PA9/PA10)
● USART3(PB10/11 and PC10/11)
● CAN2(PB5/13)
● USB OTG FS(PA11/12) in Device mode (DFU: device firmware upgrade).

Set BOOT0 to GND and it should work.
#4643148
Lesenswert?

Peter S. schrieb:
> Be aware that the BOOT0 pin has to be low to boot from flash. I think
> your board boots from the system bootloader which uses several sources
> to search for a programming device and you see some output on PB10/11
> and PC10/11.
> Read the datasheet on page 55:
> Embedded bootloader
> The embedded bootloader mode is used to reprogram the Flash memory using
> one of the
> following serial interfaces:
> ● USART1(PA9/PA10)
> ● USART3(PB10/11 and PC10/11)
> ● CAN2(PB5/13)
> ● USB OTG FS(PA11/12) in Device mode (DFU: device firmware upgrade).
>
> Set BOOT0 to GND and it should work.

program with boot 0 to GND done.but it show like this.disconnect 
imideately
 I've try PD8 and PD9.the same result.no respond
Angehängte Dateien:
Gast #4727632
Lesenswert?

Hi Zoe,
I think there is a problem with the I2C bus between the STM32 and the 
video chip. Maybe you forgot the pullups on the CLK and DATA lines (try 
2.2k). If you have a logic analyzer you can check what's going on there.
Gast #4727975
Lesenswert?

pitschu schrieb:
> Hi Zoe,
> I think there is a problem with the I2C bus between the STM32 and the
> video chip. Maybe you forgot the pullups on the CLK and DATA lines (try
> 2.2k). If you have a logic analyzer you can check what's going on there.

yeah thanks. I was digging the topic before you reply and I got it.need 
exactly 2k2-4k7 pull up resistor between +3v3 and I2C (SCL on 5150) 
right??
Gast #4728600
Lesenswert?

The alternating video status (11, 15, 85, ..) shows that there is no 
stable video signal. At least the status bits 3, 2 and 1 (color carrier 
lock, Vsync lock and Hsync lock) must be set. In the log you should see 
something like 0E or 8E. Check your video source and your hdmi2av 
converter.
Gast #4728612
Lesenswert?

zoe schrieb:
> Waldemar schrieb:
> Maybe you have to Power the hdmi2av converter with USB?
>
> yeah I have powered it already. i think it's some kind of malfunction
> because it's very hot, is there anyway for me to check with
> oscilloscope?

Check your converter with an old TV which has an AV Input

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren