Hallo, ich hätte mal ein paar Fragen zur u8g2 LIB https://github.com/olikraus/u8g2. Und zwar wie die Daten im Buffer liegen und wie die Buffergröße aus der u8g2_m_XX() abgeleitet wird? Genau geht es darum ein neues Display hinzu zufügen, er zwangsweise. Denn auf den dargebotenen Grove 0.96 OLED Display ist ein völlig anderer Controller als auf der Packung steht. Made in China eben ;)Nun muss der SH1107 hinzugefügt werden. Setup etc. funktioniert. Nur die Ausgabe fast, naja die erste ROW. Also so ganz falsch liege ich nicht. Die Zuordnung habe ich ausprobiert nur habe ich noch nicht heraus bekommen wie der callback Funktion der Datenbuffer übergeben wird. Also wie die Daten im Buffer liegen und wie die Ausgabe genau erfolgt. Ausprobieren ist beim ESP32 eine nervige Sache, vor allen wenn dieser beim ausbleiben des ACK sofort abschmiert. Die Hardware des Displays ist unter aller sa.. Der Pegelwandler funktioniert mit 3,3V nicht zuverlässig und sorgt immer wieder für Fehlfunktonionen. Von den Parametern ist auch nicht mehr viel übrig. Scrollen oder Graustufen kann der Controller nicht. Auf einer Russischen Seite fand ich denn auch das command Set. Der Hersteller selbst war offenbar dazu nicht in der Lage. Ewt. kann mir ja jemand mit ein paar Infos versorgen oder hat den Controller schon zum laufen gebracht. edit: so ich habe mich entschlossen den schei... wieder einzupacken und mir besseres zu holen. Vor allen unter dem Aspekt das mir etwas verkauft wurden mit Eigenschaften die der Artikel nicht mehr besitzt mit dem Controller darauf. Ich habe keine Zeit für solch ein Mist für diesen Preis.
:
Bearbeitet durch User
Hi Also generell versuche ich schon mit den Besitzern nicht unterstützter Displays diese via U8g2 zum Laufen zu bringen. Ein Issue auf der U8g2 Projektseite wäre dazu ganz gut. Diskussion ist auch auf Deutsch möglich. Ich gebe Dir Recht, dass es manchmal sehr lange dauert bis so ein Display sauber läuft... vor allem wenn das Display nicht vor mir auf dem Tisch liegt. Grüße, Oliver
Im Grunde ist das Projekt recht gut beschrieben. Hilfreich wäre aber ein Example zu einen bekannten Driver das sehr gut Dokumentiert und nachvollziehbar wäre. Die entscheidenden und wichtigen Fragen werden durch die Doku nicht wirklich geklärt wenn es um die Ausgaberoutine geht. Bei dem Grove Display kamen noch Hardware Probleme hinzu, die es nicht einfacher machten. Ich werde die Library mal einen ARM einsetzen dann kann ich den Code auch debuggen. So bekomme ich schon heraus wie das funktioniert ;) . Das Display ging allerdings an den Lieferanten zurück. Da der Controller die angepriesenen Fähigkeiten nicht besitzt. - keine Graustufen - kein Scrolling - Pegelwandler funktionieren nicht zuverlässig bei 3.3V - der Schaltregler(12V) erzeugt einen Stromimpuls der einen Kurzschluss gleicht https://www.seeedstudio.com/Grove-OLED-Display-1.12%22-p-824.html Das Display hat keinen SSD1327 Controller mehr sondern ein SH1107 dessen Dokumentation auch noch sehr schwer zu finden ist. Außerdem ist die Ausgabe per I2c des ESP32 sehr langsam ohne den RAM zu nutzen. Da das ganze über ein CMD Buffer funktioniert und erst auf ein Kommando die Daten gesendet werden. Da man die Länge beim Single byte Transfer nicht kennt führt das immer wieder zu einer Start/Stop Kondition. Was die Ausgabe stark verlangsamt. Im Grunde ließe ich das lösen aber dazu müsste ich wissen wie sich die Daten im Buffer zusammensetzen und man berechnen kann viele Daten übertragen werden müssen. Bei 1024byte muss dann die Ausgabe erfolgen, da sonst der I2C RAM voll ist. Ohne RAM wird nur ein Pointer übergeben und dessen Inhalt könnte sich ändern. Vermutlich führt das dann zum Absturz da beim ausbleiben des ACKs ein anderer Prozess aber auf diesen Pointer zugreift so lange der I2c Prozess auf ein ACK wartet.
:
Bearbeitet durch User
Dann sollte es doch bei Seeedstudio zumindest einen Hinweis auf den anderen Controller geben, komisch. Übrigens war bei meinen Versuchen dieses Grove Display eines der langsamsten I2C Displays. Ich habe das aber auf den Pegelwandler auf dem PCB Board geschoben, der schnelleres Takten verhindert. Oliver
gibt es auch zu mindestens im Beispiel Code beim Init muss man den Controller angeben. Da die in China nicht lesen können packen sie immer noch den alten Zettel mit rein und auch viele Shops brauchen Zeit um die Artikel Texte zu ändern. Der Controller ist auch ein extremer Rückschritt, ich vermute mal das die Displays mit dem SSD1327 nicht verfügbar waren und man einfach andere drauf getan hat. Keine Ahnung ob das so bleibt, jedenfalls blöd da man nicht sehen kann was für ein Controller drauf ist. Der Pegelwandler ist unter aller Kanone, schon mal in den Plan geschaut ? Bis 100khz gehen solche Geschichten wenn man sie richtig baut schon. Keine Ahnung welcher Amateur da dran war. Der Plan sagt alles ! Ich bin noch auf der suche nach einen kleinen Display, um so kleiner des so besser.
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.