Wemos D1 + OLED läuft nicht

Moin zusammen, habe gerade ein SSD1306 OLED an meinen Wemos angeschlossen.

Zeigt aber leider nichts an, der i2c scanner findet aber das Display unter 0x3C.

/*********
  Rui Santos
  Complete project details at https://randomnerdtutorials.com  
*********/

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels

// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);

void setup() {
  Serial.begin(115200);

  if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3D for 128x64
    Serial.println(F("SSD1306 allocation failed"));
    for(;;);
  }
  delay(2000);
  display.clearDisplay();

  display.setTextSize(1);
  display.setTextColor(WHITE);
  display.setCursor(0, 10);
  // Display static text
  display.println("Hello, world!");
  display.display(); 
}

void loop() {
  
}

Das Display ist wie folgt angeschlossen:
D1 - SCL
D2 - SDA
GND - GND
5V - VCC

Was könnte die Fehlerursache sein?

Geht das Beispiel:
https://funduino.de/nr-42-oled-display-ssd1306-128x64-128x32

Ist die Höhe falsch?

Gerade probiert, geht nicht.

Nein.

Zweiter Versuch:
https://znil.net/index.php/ESP8266_Wemos_D1_Mini_mit_0,96_Zoll_OLED_128x64_I2C_volle_Auflösung_nutzen_Beispiel

Leider auch nicht.

Geht denn das Adafruit-Beispiel ssd1306_128x64_i2c ?

Nein, geht damit leider auch nicht.

Letzter: GitHub - stblassitude/Adafruit_SSD1306_Wemos_OLED: SSD1306 oled driver library for the Wemos Mini OLED shield (64x48)
Nicht wundern - das geht auch mit 128x64

Schau mal in die Tabelle dort bei ESP8266:

change OLED_RESET to different pin if using default I2C pins D4/D5.

Warum sollen die I2C Pins D4/D5 sein? Hab das Display ja an D1/D2.

Warum verwendest du 5Volt am Oled ?
Damit können je nach Display, 5 Volt an den Pins des Wemos liegen.
Der ist nicht 5Volt tolerant.

Zeige mal Fotos des Aufbaus.

Hatte das Display erst an 3.3 V angeschlossen, als es dann nichts angezeigt hab, bin ich zu 5 V gewechselt. Dachte das wäre nicht schlimm, wie soll den durch das Display 5 V an den Wemos kommen?

Das hängt vom Display ab, ob da ein Spannungsregler drauf ist.

Dein Programm aus #1 funktioniert mit meinem ESP32, sollte also kein Programmfehler sein.

Ich sehe Deine Hardware nicht, aber beim LOLIN D1 mini sind die mit I²C (SDA, SCL) beschriftet .

Und woher soll die Library das wissen?


Also schießt das Display 5 V über SCL und SDA zurück in den Wemos oder wie kann ich das verstehen?

Bei meinem Klon nicht.

Das sind doch die Anschlüsse für I2C, darüber läuft doch die Library.

Die ESP Wire kann mit fast allen Pins!
Aber ok... ich kann sowieso nicht gegentesten...

Das muss beim Wemos nicht extra angegeben werden.
Der Kennt die I2C Pins.

Und auf denen bin ich. GPIO 4 und GPIO 5 / Auf dem Board nur als D2 / D1, siehe Schematic.

Sind PullUp-Widerstände vorhanden?