Beoordelingen
Schrijver: Henk
- Toegevoegd op: 08/02/2021
- Gemiddelde beoordeling:
Prima schermpje. Met een Teensy 4 aangesloten op I2C pennen 16,17 is een aanpassing nodig in "..\U8g2\src\U8x8lib.h".
Ongeveer na regel 130 "#if defined(ARDUINO_ARCH_ESP32)" invoegen :
#ifndef U8X8_HAVE_2ND_HW_I2C
#define U8X8_HAVE_2ND_HW_I2C
#endif
In de Arduino DUE zijn bij de standaard I2C poort (20,21) pull-up weerstanden van 1k5 (4x in één behuizing, 2 ongebruikt) gemonteerd. Deze waarde is te laag voor een goed acknowledge signaal van dit display.
De-soldeer dit weerstand setje van de print.
Monteer twee 4k7 (3k3 is een grenswaarde) weerstanden tussen voor de pennen 20 en 21 (bv bij de connector) naar de 3.3V .
Installeer vanuit de bibliotheek "Adafruit_SSD1327". Gebruik het voorbeeld "ssd1327_test".
Wijzig op regel 54 het adres van 0x3D naar 0x3C.
Resultaat : voorbeelden van mooi bewegende beelden.
Schrijver: Jeroen
- Toegevoegd op: 03/08/2020
- Gemiddelde beoordeling:
Let op: you get what you pay for.
Afgelopen jaar heb ik er twee gekocht, waarvan eentje als backup, voor gebruik in een monitoringsysteem voor het een en het ander. Een van die twee displays heeft al die tijd aan gestaan in dat systeem. Hij heeft het ook lekker warm gehad, want hij zit op een kort afstandje van een Raspberry Pi zero. Toegegeven zijn dat niet de beste omstandigheden voor een OLED, maar ik had weinig keus vanwege de form factor en hoeveelheid data die ik wilde kunnen laten zien. Inbranden zag ik al aankomen, dus verschuift het systeem de framebuffer iedere minuut een pixel (met 32 verschillende offsets in totaal) en had ik hem ingesteld op de laatste helderheid die in het donker zichtbaar was.
Dit heeft hij denk ik een half jaar ofzo uitgehouden, waarna het display flink helderheid begon te verliezen. Tot mijn verbazing eigenlijk deed de helderheid instelling vervolgens ook bijna niets meer; maximale helderheid was ook nog amper leesbaar. Het lijkt meer met temperatuur of leeftijd te maken dan met inbranden, want voor zover er uberhaupt verschil zit in helderheid tussen de pixels, is het meer een doffe vlek van minder heldere pixels in het midden, met nog iets beter werkende randen.
Vervolgens heb ik het backup display erin gehangen... en die deed helemaal niets meer! En die heeft slechts op tafel in een doosje gelegen nadat ik em na aankoop getest heb. Het enige wat ik voor excuus kan bedenken voor dat display is dat het doosje in de buurt van een raam lag, en wellicht te warm is geworden door de zon.
Om er zeker van te zijn dat het niet aan de rest van het systeem ligt (en omdat ik het systeem nog steeds in gebruik heb), heb ik eergisteren een nieuwe bestelt. Zojuist vervangen, en die doet het prima; het ligt dus echt aan de displays zelf.
Let verder op dat niet alle pixels even helder zijn vanaf het begin; in geen van de twee displays die ik oorspronkelijk uitvoerig getest heb zaten echt dooie pixels, maar ze hadden beide wel een pixel of 3 die maar ongeveer de helft van de helderheid van de omliggende pixels hadden. Echt mooie grijswaarden moet je niet verwachten dus. Van de 16 die de controller biedt gebruik ik er 4 voor antialiasing, meer dan dat heb je niet zo veel aan.
Let ook op dat een I2C verbinding aan de trage kant is voor 128x128 pixels; full-screen refresh rate heb ik met een Teensy 3.2 niet hoger dan ongeveer 3 FPS gekregen als ik het me goed herinner. Als je animaties wil (zoals ik) zul je het bij kleine dingen moeten houden, en partial updates moeten sturen. Of de Arduino libraries dergelijke dingen ondersteunen weet ik niet meer, maar waarschijnlijk niet, want ik heb de hele driver uiteindelijk zelf gemaakt.
Desalniettemin, voor een tientje? Helemaal prima. Zeker als je gewoon wat aan het hobbyen bent voor iets wat je toch niet lang zal gebruiken.
Schrijver: Ferdy
- Toegevoegd op: 17/06/2019
- Gemiddelde beoordeling:
Goed product, hoewel de documentatie te wensen overlaat (was ik te hoopvol dat het niet in het Chinees zou zijn?)
Uiteindelijk blijkt het om een SSD1327 (MIDAS) te gaan (zie ook de beoordeling van Adri, dank hiervoor)
Ik heb hem werkend gekregen op een Lolin32 (ESP32 variant) via MicroPython (natuurlijk ook op Arduino + U8g2, maar dat was niet de uitdaging)
Het scherm is aan te sturen middels een Framebuffer (framebuf.GS4_HMSB, dat wil zeggen Grayscale 4-bit)
Als je snel van start wil, gebruik dan de library https://github.com/mcauser/micropython-ssd1327 en volg de instructies van deze issue https://github.com/mcauser/micropython-ssd1327/issues/1 om de offset goed te zetten en de volledige 128x128 pixels te gebruiken.
Schrijver: Adri
- Toegevoegd op: 06/05/2019
- Gemiddelde beoordeling:
Prima display, alleen wat zoekwerk om de U8g2 library werkend te krijgen.
Ik heb onderstaand recept gebruikt, misschien helpt dit je wat verder....
1) Open Arduino IDE
- Schets
- Bibliotheek gebruiken
- Bibliotheken beheren
- Zoeken: U8g2
- Installeer: U8g2 by Oliver, versie 2.25.10 of hoger
- Sluiten
2) Maak een nieuwe schets:
// Arduino UNO 1,5inch OLED Display 128x128
// OLED Chipset = SSD1327
// 4-wire I2C, 3v3 or 5 volt
// Connect display: GND to GND, Vcc to +3v3, SCL to A5 , SDA to A4
#include <U8g2lib.h>
#include <Wire.h>
// Initialize OLED display
U8G2_SSD1327_EA_W128128_1_HW_I2C u8g2(U8G2_R0, U8X8_PIN_NONE);
void setup(void) {
u8g2.begin(); // Clear the OLED display
}
void loop(void) {
u8g2.setContrast(255); // Set OLED contrast (1=min, 255=max)
u8g2.firstPage(); // Write to OLED PageBuffer
do {
u8g2.setFont(u8g2_font_ncenB10_tr); // Bold large text
u8g2.drawStr(0,12,"OLED 128x128");
u8g2.setFont(u8g2_font_ncenR10_tr); // Regular large text
u8g2.drawStr(0,25,"SSD1327");
u8g2.setFont(u8g2_font_6x10_tf); // Small text
u8g2.drawStr(0,35,"Regel 3");
u8g2.drawStr(0,45,"Regel 4");
u8g2.drawStr(0,55,"Regel 5");
u8g2.drawStr(0,65,"Regel 6");
u8g2.drawStr(0,75,"Regel 7");
u8g2.drawStr(0,85,"Regel 8");
u8g2.drawStr(0,95,"Regel 9");
} while ( u8g2.nextPage() ); // Display OLED PageBuffer
}
3) OLED aansluiten op GND, +3,3v, SCL en SDA
4) - Schets
- Upload
Succes met de hobby !