Display für LaCrosseGateway

Begonnen von HCS, 02 Mai 2016, 09:20:29

Vorheriges Thema - Nächstes Thema

pc1246

Moin
@Omega: Das Gleiche ist mir auch passiert! Ich habe mir dann welche in Deutschland bestellt. Die waren gleich am naechsten Tag da und auch I2c! Der wesentlich hoehere Preis war mir dann auch egal!
@amunra: Kannst Du das mit den Pullups noch etwas genauer erklaeren? Dann kann ich die je eventuell doch noch einsetzen!
Gruss Christoph
HP T610
Onkyo_AVR;Enigma2; SB_Server; SB_Player; HM-USB; PhilipsTV; harmony hub; Jeelink mit PCA301; Somfy; S7-300; LGW; HUE; HM-IP auf Charly; div

amunra

#121
Ich habe kein SPI OLED und kann daher eigentlich wenig dazu sagen. ;)
Auf Basis der oben verlinkten Seite und dem dort verlinkten Datenblatt vermute ich, dass es ein I2C/SPI OLED Display ist, welches in I2C-Mode oder SPI-Mode betrieben werden kann.
Auch diese Aussage:
ZitatAlthough it was sold as an I2C display, it turned out that it operates as an SPI device by default. If you look at the back side, you can see that it is in 4-wire SPI mode. I2C operation will be researched in another post later.
lässt vermuten, dass dies möglich ist.

Auf Seite 19 im Datenblatt steht etwas zu den Pullups, mehr kann ich dazu nicht sagen.

Adafruit verwendet für das 128x32-I2C-OLED Breakout PCB ein 10k Wiederstand, ob das für das 1306 auch zutrifft?

Wie bereits geschrieben, genauere Informationen kann ich leider nicht geben. Da müsstet ihr mal recherchieren.
Viel Glück.

P.S: Es kann auch sein, dass sich das Display mit einer anderen Adresse meldet. Die Adresse sieht man evtl. in der LGW-Konsole (Bootvorgang) oder mit einem I2C-Scanner bzw. ich habe weiter oben eine LGW-Firmware gepostet, welche einen Scan durchführt und die ermittelten Adressen in der Konsole anzeigt.

EDIT: Dieses hat Jumper, mit den man den Betriebsmode definieren kann.

HCS

#122
Mal ein Abhandlung über die Pullup-Widerstände:
Bei I2C arbeiten der Master (ESP8266) und die Slaves (BMP180, OLED, ...) mit open drain Ausgängen.
Deshalb muss man SCL und SDA mit Pullup-Widerständen (üblicherweise im Bereich von 4,7K ... 10K) auf 3.3V ziehen.

Es reicht, wenn irgendwo im Bus die Pullups vorhanden sind. Wenn man bereits z.B. einen BMP180 oder BME280 angeschlossen hat, der auf einem Breakout-Board sitzt, dann sind da meistens auch Pullups mit drauf. Dann braucht man keine weiteren. Merkt man recht einfach daran, dass es funktioniert, obwohl man keine weiteren Widerstände verbaut hat. In diesem Fall kann man das I2C-Oled einfach mit dran hängen, und gut ist.

SPI / I2C:
Falls man ein OLED hat, das wie das in SSD1306-2.png aussieht, sollte man eigentlich die Widerstände umlöten können, um es auf I2C zu konfigurieren. Siehe auch angehängtes Schaltbild.

Also vermutlich (ohne Garantie) R3 runterlöten und auf die R1-Position löten und bei R8 eine Brücke drauf löten, da er lt. Schaltplan 0 Ohm hat.

Und generell an alle OLED-Besteller: wenn es mehr als vier Anschlüsse hat, dann Vorsicht.

Kann ja mal jemand probieren, oder es in einen Umschlag stecken und mir schenken, dann probiere ich es  ;D

Nachtrag:
Wie man auf dem Schaltbild sieht, dieses OLED hat auch bereits Pullups für SCL und SDA drauf.

amunra


HCS

Dann musst Du jetzt alle grünen und blauen like buttons bei meinem Beitrag klicken  ;D ;D ;D

amunra

ich sage/schreibe es lieber.  ;)
EDIT: Aber, wenn Du es magst dann drücke ich für dich..

Omega

Ich habe jetzt ein OLED aus D (weil es jetzt schnell gehen sollte) und dann gleich das mit 1.3". SUPER. Ein echter Hingucker.
So langsam muss ich mir doch mal Gedanken zu einem Gehäuse machen.  :)

Beim China-Händler habe ich nachgefragt und folgende Antwort erhalten:
ZitatThe default interface is SPI. It supports IIC with the folowing settings.:

Tear down resistor R3 and weild it to the R1 position; 
dc, cs  pins have ground connection;
res pin controls via an IO to complete reset;
Resseting method: first use the RES pin to maintain a low level of 200ms;
then use the RES pin maintain high level to complete the reset operation;
then initialize the OLED, and you can use IIC.
Deckt sich z.T. mit den Erkenntnissen von HCS. Und sein Foto vom OLED sieht genau wie meines aus.

Wobei mir allerdings der Umstand mit der Reset-Leitung nicht wirklich klar ist. Außer der Verbindung müsste ja auch die Software aktiv werden.

Ich bin noch unentschlossen, ob ich mal versuchen soll, den Miniatur-Widerstand umzulöten oder ob ich das OLED einfach für irgend eine SPI-Lösung verwende.

LG
Holger

NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

pc1246

Moin
@HCS: Schick mir Deine Adresse per PM, dann gebe ich dir eins ab!
Gruss Christoph

P.S.: Mit Photos hilft leider auch nicht immer, da habe ich jetzt 5 falsche NodeMCU-Kits, da der Chinese die richtigen Bilder bei Ali hat, aber die falschen Kits schickt!
HP T610
Onkyo_AVR;Enigma2; SB_Server; SB_Player; HM-USB; PhilipsTV; harmony hub; Jeelink mit PCA301; Somfy; S7-300; LGW; HUE; HM-IP auf Charly; div

Omega

Ich habe auch diverse NodeMCUs (v0.9, v2, v3) und ESP12, ESP12e, z.T. mit den unterschiedlichsten Problemen. Nachdem ich aber das BIOS ESP8266_NONOS_SDK_V2.0.0 (http://bbs.espressif.com/viewtopic.php?f=46&t=2502) aufgespielt habe, sind meine Probleme alle weg.
NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

HCS

Zitat von: Omega am 25 November 2016, 00:50:50
So langsam muss ich mir doch mal Gedanken zu einem Gehäuse machen.  :)
Wenn Du eins gefunden hast, in das das man das OLED ohne Labsägearbeiten einbauen kann, dann gib mir bitte unbedingt Bescheid.

Zitat von: Omega am 25 November 2016, 00:50:50
Beim China-Händler habe ich nachgefragt und folgende Antwort erhalten:Deckt sich z.T. mit den Erkenntnissen von HCS. Und sein Foto vom OLED sieht genau wie meines aus.

Wobei mir allerdings der Umstand mit der Reset-Leitung nicht wirklich klar ist. Außer der Verbindung müsste ja auch die Software aktiv werden.
Eben. Ich frage mich, ob der China-Mann da recht hat. Warum soll nach dem Power-On-Reset nochmal ein Reset erforderlich sein, um die per Hardware gesetzte Konfiguration zu verarbeiten? Aber ausschließen, dass der SSD1306 so seltsam drauf ist, kann ich aktuell auch nicht.

pc1246 ist ja so nett und schickt mir eins von den Dingern, dann gehe ich der Sache mal auf den Grund und berichte.


HCS

Zitat von: amunra am 24 November 2016, 21:10:16
EDIT: Aber, wenn Du es magst dann drücke ich für dich..
Nee lass mal, war eher in Scherz.
Aber ich glaube, wenn ich hundert Klicks habe, darf ich ein FHEM 2.8 kostenlos runterladen  ;D ;D
Oder sonstwas, keine Ahnung, zu was das eigentlich gut ist.  :-\

amunra

Zitat von: HCS am 25 November 2016, 12:35:59
Nee lass mal, war eher in Scherz.
Ich hab das schon verstanden  ;) ;) :) :)
Zitat von: HCS am 25 November 2016, 12:35:59
Aber ich glaube, wenn ich hundert Klicks habe, darf ich ein FHEM 2.8 kostenlos runterladen  ;D ;D
Oder sonstwas, keine Ahnung, zu was das eigentlich gut ist.  :-\
Du bekommst als FHEM Mitarbeiter des Jahres ein FHEM Wimpel (siehe Anhang) (Die Idee möchte ich übrigens nicht schlecht reden - ich finde sie gut!) 8) 8) 8) ;D

PeMue

Zitat von: HCS am 25 November 2016, 12:30:49
Wenn Du eins gefunden hast, in das das man das OLED ohne Labsägearbeiten einbauen kann, dann gib mir bitte unbedingt Bescheid.
Och, eine Fräsmaschine würde es vermutlich auch schon tun  ;)

Zitat von: HCS am 25 November 2016, 12:35:59
Aber ich glaube, wenn ich hundert Klicks habe, darf ich ein FHEM 2.8 kostenlos runterladen  ;D ;D
Das würde dann wahrscheinlich noch auf der FritzBox funktionieren  ;D
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

HCS

Zitat von: pc1246 am 25 November 2016, 06:47:10
@HCS: Schick mir Deine Adresse per PM, dann gebe ich dir eins ab!
Ist angekommen.

Um es auf I2C zu konfigurieren muss man R3 runterlöten und auf die R1-Position drauflöten und dann noch eine Brücke auf R8 löten (siehe OLED2.png).
D0 am OLED ist SCL und kommt an D1 vom ESP
D1 am OLED ist SDA und kommt an D2 vom ESP

China-Mann hat recht, ohne verzögerten Reset übernimmt es die Konfiguration beim Anlegen der Versorgungsspannung nicht.
Das kann man mit einem RC-Glied am RES-Pin erreichen. 10K nach 3.3V und 100nF nach GND (siehe OLED1.png).
Man kann da nehmen, was man gerade da hat, 1uF oder etwas bis 10uF sollte auch gehen.

So erkennt das LGW das OLED dann und es zeigt etwas an.

Leider ist das OLED defekt (siehe OLED3.png) und zeigt nur jede zweite Zeile an. Das muss aber schon ab Werk so gewesen sein, da das abgebrochene Eck nicht in der Verpackung war.

Ich vermute, dass es mit einem intakten OLED dann auch normal aussieht, aber das müsste mal noch jemand sicherstellen, der ein unbeschädigtes hat.
Ich kann leider nicht sicher sagen, ob sich das OLED generell noch anders verhält oder der Defekt am Displaglas dafür verantwortlich ist.

Schade, hatte mich schon gefreut, dass ich jetzt eins mehr habe  :'(

Omega

Ich hab's riskiert und mein OLED umgelötet (den Widerstand umzulöten ist ja schon fast pervers – mir sind die Dinger echt zu klein).

Der Erfolg ist aber nur mäßig. Im Gegensatz zu dem originalen I2C-Display wird das Bild fast nie korrekt aufgebaut. Die Übertragung kommt mir deutlich langsamer vor. Selbst wenn ich nur das Status-Display anzeigen lasse, habe ich meistens irgendwelche Verschiebungen im Bild.

Der Umbau scheint sich also nicht wirklich zu lohnen.


NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave