Forum: Mikrocontroller und Digitale Elektronik SSD1306 I2C - Display verhält sich komisch..


von Jan H. (janiiix3)


Angehängte Dateien:

Lesenswert?

Hallo,

wie auf den Bildern zu sehen verhält sich das OLED nach nicht 
vorhersehbarer Zeit sehr komisch.

Ubrrwiegend nur wenn Sonnenlicht drauf fällt..

Kann das am UV Licht liegen?

von Marcel (Gast)


Lesenswert?

Hallo,

ich kann Dir leider nicht helfen, aber welche Komponenten hast Du da? 
Das sieht interessant aus.

Viele Grüße
Marcel

von Karl B. (gustav)


Lesenswert?

Hi @Jan,
intensive Sonnenbestrahlung (Temperaturgang) hat eher Auswirkungen auf 
den Kontrast.
Dann, wenn LCD höherer "statischer" Spannung ausgesetzt wird, fallen 
evtl. einzelne Pixel aus.
(Habe ich selbst ausprobiert.)

Mit UV-Strahlung hat das in den Bildern gezeigte Phänomen zunächst 
einmal garnichts zu tun, nur mittelbar.

Sieht für mich eher nach "Bigfoot"-Character-Ansteuerungs-Versatz aus.
Die Timings in der Software sollten noch einmal überprüft werden.

ciao
gustav

: Bearbeitet durch User
von Lorenz R. (lorenz_r)


Lesenswert?

Hallo,

Ich hatte einmal ein ähnliches Problem mit diesem Display. Damals lag es 
an einer wackeligen Lötstelle. Könnte das bei dir auch das Problem sein?

lg
Lorenz

von Harry (Gast)


Lesenswert?

Blitz mal mit einem Fotoblitz drauf. Ich hatte schon Displays, die 
darauf sehr seltsam reagiert haben (Bild weg, Bild gespiegelt).

von Tränen Vergossen (Gast)


Lesenswert?

Auf dem Board sind keine Abblock-Cs zu finden.

Sollten doch einer oder zwei drauf sein dann sind es
garantiert zu wenig. Wenn ich den Akku sehe dann weiss
ich dass ich mindestens einen dicken Elko brauche.

Ist wohl wie so häufig: Kondensatoren sind in Mikro-
controller-Schaltungen nur lästiges, überflüssiges,
kostenverursachendes Beiwerk das weg kann.

von Jan H. (janiiix3)


Lesenswert?

Tränen Vergossen schrieb:
> Auf dem Board sind keine Abblock-Cs zu finden.
>
> Sollten doch einer oder zwei drauf sein dann sind es
> garantiert zu wenig. Wenn ich den Akku sehe dann weiss
> ich dass ich mindestens einen dicken Elko brauche.
>
> Ist wohl wie so häufig: Kondensatoren sind in Mikro-
> controller-Schaltungen nur lästiges, überflüssiges,
> kostenverursachendes Beiwerk das weg kann.
Danke für deine "Ausführlich" , "Technisch" , "Wertvolle" Äußerung!

von Jan H. (janiiix3)


Lesenswert?

Lorenz R. schrieb:
> Hallo,
>
> Ich hatte einmal ein ähnliches Problem mit diesem Display. Damals lag es
> an einer wackeligen Lötstelle. Könnte das bei dir auch das Problem sein?
>
> lg
> Lorenz

Das hatte ich am Anfang auch vermutet. Ist es aber leider nicht. Sitzt 
alles perfekt und ist sauber angelötet.

von Jan H. (janiiix3)


Lesenswert?

Marcel schrieb:
> Hallo,
>
> ich kann Dir leider nicht helfen, aber welche Komponenten hast Du da?
> Das sieht interessant aus.
>
> Viele Grüße
> Marcel

RTC , BMP180 , SHT21 , SSD1306 nichts wildes.

von Tränen Vergossen (Gast)


Lesenswert?

Jan H. schrieb:
> Danke für deine "Ausführlich" , "Technisch" , "Wertvolle" Äußerung!

Du könntest ja mit Leichtigkeit meine Postulate entkräften
wenn sie denn keine Substanz haben. Einfach mal zeigen dass
es nicht so ist.

von Jan H. (janiiix3)


Lesenswert?

Karl B. schrieb:
> Hi @Jan,
> intensive Sonnenbestrahlung (Temperaturgang) hat eher Auswirkungen auf
> den Kontrast.
> Dann, wenn LCD höherer "statischer" Spannung ausgesetzt wird, fallen
> evtl. einzelne Pixel aus.
> (Habe ich selbst ausprobiert.)
>
> Mit UV-Strahlung hat das in den Bildern gezeigte Phänomen zunächst
> einmal garnichts zu tun, nur mittelbar.
>
> Sieht für mich eher nach "Bigfoot"-Character-Ansteuerungs-Versatz aus.
> Die Timings in der Software sollten noch einmal überprüft werden.
>
> ciao
> gustav

Wenn das ein Versatz wäre, wieso tritt der nur manchmal auf? bzw. so 
selten?!

Das mit den Timing könnte schon eher sein, nur welches Timing meinst du 
genau?

Ich arbeite mit genau 400kHz I2C Bus Frequenz. Alle anderen 
Busteilnehmer haben damit keinerlei Problem auch Frequenzen < 400kHz 
lösen das Problem leider nicht.

von Jan H. (janiiix3)


Lesenswert?

Tränen Vergossen schrieb:
> Jan H. schrieb:
>> Danke für deine "Ausführlich" , "Technisch" , "Wertvolle" Äußerung!
>
> Du könntest ja mit Leichtigkeit meine Postulate entkräften
> wenn sie denn keine Substanz haben. Einfach mal zeigen dass
> es nicht so ist.

Ich habe die Stromversrogung mit dem Oszi. genau unter die Lupe 
genommen. Das sieht vollkommen okay aus.

Außerdem sind genug C´s auf den Breadboards die gegen VCC und GND 
angeschlossen sind. Dennoch sind welche auf dem Board nochmal extra 
bestückt ;)

von Johannes S. (Gast)


Lesenswert?

Das sieht eher nach einem Ansteuerungsfehler aus. Die Darstellung ist 
zum Teil spiegelverkehrt, das schafft man bei dem Display durch 
programmieren der Steuerregister. Vielleicht ist das I2C Timing stark am 
Limit und wird durch Erwärmung weiter ins ungünstige verschoben und 
erzeugt dann falsche Steuercodes zum Display.

von Jan H. (janiiix3)


Lesenswert?

Johannes S. schrieb:
> Das sieht eher nach einem Ansteuerungsfehler aus. Die Darstellung ist
> zum Teil spiegelverkehrt, das schafft man bei dem Display durch
> programmieren der Steuerregister. Vielleicht ist das I2C Timing stark am
> Limit und wird durch Erwärmung weiter ins ungünstige verschoben und
> erzeugt dann falsche Steuercodes zum Display.

Kann auch sein.
Habe derzeit für die PullUps 10k im Einsatz. Jeweils für "SDA" und "SCL" 
das bei "4" Busteilnehmern. Evtl. ist das viel zu hoch?

von Johannes S. (Gast)


Lesenswert?

Da habe ich eher 2k2 in Erinnerung. Wenn du die SW selber geschrieben 
hast dann zum Fehler einkreisen mal die Sensoren abklemmen.
Temperaturfehler kann man auch mit Fön oder Kühlschrank provozieren.

von Jan H. (janiiix3)


Lesenswert?

Johannes S. schrieb:
> Da habe ich eher 2k2 in Erinnerung. Wenn du die SW selber geschrieben
> hast dann zum Fehler einkreisen mal die Sensoren abklemmen.
> Temperaturfehler kann man auch mit Fön oder Kühlschrank provozieren.

Gute Idee. Werde die Kiste mal in den Kühlschrank legen.

von Johannes S. (Gast)


Lesenswert?

Ich würde erst versuchen den Fehler mit Fön reproduzierbar zu machen. 
Dann die Pull up ändern und sehen ob es bei Erwärmung immer noch 
passiert.

von Stefan F. (Gast)


Lesenswert?

>> Habe derzeit für die PullUps 10k im Einsatz
> Da habe ich eher 2k2 in Erinnerung.

Das sehe ich auch so. Das Wifi-Kit-8 Board wird mit 12k Ohm geliefert. 
Ich kann Dir aus Erfahrung sagen, dass dessen Display damit selbst bei 
ungenutztem WLAN unzuverlässig läuft.

Mit 2,2k Ohm läuft es hingegen gut.

von Jan H. (janiiix3)


Lesenswert?

Stefanus F. schrieb:
>>> Habe derzeit für die PullUps 10k im Einsatz
>> Da habe ich eher 2k2 in Erinnerung.
>
> Das sehe ich auch so. Das Wifi-Kit-8 Board wird mit 12k Ohm geliefert.
> Ich kann Dir aus Erfahrung sagen, dass dessen Display damit selbst bei
> ungenutztem WLAN unzuverlässig läuft.
>
> Mit 2,2k Ohm läuft es hingegen gut.

Verstehe dich jetzt nicht ganz. Du willst mir damit sagen, dass es mit 
beiden Werten gut läuft?

von Johannes S. (Gast)


Lesenswert?

PS:
Für Langzeitbetrieb mit gleichem Bildinhalt taugen diese Displays nicht, 
die Pixel werden schon nach Monaten deutlich schwächer.

von Harald (Gast)


Lesenswert?

Jan H. schrieb:

> Habe derzeit für die PullUps 10k im Einsatz. Jeweils für "SDA" und "SCL"
> das bei "4" Busteilnehmern. Evtl. ist das viel zu hoch?

Höre bloß nicht auf die Bastler hier mit ihren Erfahrungen.

Wichtig sind Datenblätter deiner Busteilnehmer und die Spezifikationen 
für den I2C-Bus.

von Karl B. (gustav)


Lesenswert?

Jan H. schrieb:
> Das mit den Timing könnte schon eher sein, nur welches Timing meinst du
> genau?

Hi,
"Bigfoot" benutzt ja afaik pixelweise erzeugte "user defined" 
Charakters. Dazu wird in der SW ja eine Extra-Routine durchlaufen. Das 
LCD braucht für diese Steuerbefehle evtl. mehr Pausen zwischen den 
einzelnen Instruktionen, als die üblichen. Und 400 kHz I2C ist für mich 
ja schon jenseits der Schallmauer. (Z.B. bei RS232 8N1 9k6 ohne 
Zwischenpufferung ist beim LCDisplay normalerweise Schluß.)

ciao
gustav

von Tränen Vergossen (Gast)


Lesenswert?

Harald schrieb:
> Höre bloß nicht auf die Bastler

Ich bin Bastler und sage dass 10K Pullup und 400KHz I2C
Busfrequenz nicht ganz zusammenpassen (können, abhängig von
der aktuellen Konfiguration). YMMV.

von Jan H. (janiiix3)


Lesenswert?

Tränen Vergossen schrieb:
> Harald schrieb:
>> Höre bloß nicht auf die Bastler
>
> Ich bin Bastler und sage dass 10K Pullup und 400KHz I2C
> Busfrequenz nicht ganz zusammenpassen (können, abhängig von
> der aktuellen Konfiguration). YMMV.

Man sagt ja man soll in der Regel 4k7 - 10k PullUps nehmen.
Wie berechnet man das denn, geht das überhaupt so ohne weiteres?

von Tränen Vergossen (Gast)


Lesenswert?

Jan H. schrieb:
> Wie berechnet man das denn,

Man kalkuliert die Buslast (Kapazitäten der Pins und der Leitung)
seines Designs und berechnet mit dem Pullup die Anstiegstzeit.

Die Anstiegstzeit muss klein (sagen wir mal 5-10%) gegenüber der
Periodendauer der Taktfrequenz sein.

von pegel (Gast)


Lesenswert?

Sieh dir doch die Signale mal mit dem Oszi an.
Vielleicht ist dann schon alles geklärt.

von Stefan F. (Gast)


Lesenswert?

> Verstehe dich jetzt nicht ganz.
> Du willst mir damit sagen, dass es mit beiden Werten gut läuft?

10k Ohm sind zu viel, läuft unzuverlässig.
2,2k Ohm sind gut.

von Richard (Gast)


Lesenswert?

Versuch mal, das Display mit schwarzen Isolierband (besser mit 
Aluklebeband) "abzuschatten".
Auf dem Folienleiter sitzt der Controller, welcher sicherlich eine 
gewisse Lichtempfindlichkeit aufweisen wird. Da das Problem mit 
Sonnenlicht auftritt, könnte ich mir schon vorstellen, dass das ganze 
mit gekippten Bits in Registern durch Lichteinfall zu tun haben könnte.
Ein Versuch wärs zumindestens wert.

von Stefan F. (Gast)


Lesenswert?

> Höre bloß nicht auf die Bastler

Ich bin ein ausgebildeter Bastler. Und ich habe das auch mit einem 
Oszilloskop überprüft. Kannst du mir schon glauben.

> Die Anstiegstzeit muss klein (sagen wir mal 5-10%)
> gegenüber der Periodendauer der Taktfrequenz sein.

Die konkreten Anforderungen stehen im Datenblatt des SSD1306.

von Tränen Vergossen (Gast)


Lesenswert?

Stefanus F. schrieb:
> Ich bin ein ausgebildeter Bastler.

Ohhh, ich bin sogar ein Meisterbastler, mit Meisterbrief sozusagen.

Habe mir meinen Meisterbrief selbst geschrieben und sogar
selbst unterschrieben.

von Jan H. (janiiix3)


Lesenswert?

Habe die Schaltung gerade aus dem Kühlschrank geholt und siehe da wieder 
genau das gleiche Problem. Scheint wirklich an den Kapazitäten und den 
PullUps zu liegen..

von Stefan F. (Gast)


Lesenswert?

> Habe mir meinen Meisterbrief selbst geschrieben

Ziehe Dich doch nicht selbst in den Dreck und dabei andere mit. Sollte 
das lustig sein?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.