Mini ESP32-C3 mit 0,42″OLED Display

Dieses daumengroße ESP32-C3 Entwicklungsboard misst gerade einmal 20 × 25 mm – kleiner als ein Stück Schokolade. Trotz seiner winzigen Abmessungen steckt es voller Möglichkeiten: Auf der Vorderseite befindet sich ein 0,42‑Zoll OLED‑Display, das Statusinformationen, Text oder kleine Symbole darstellen kann.

Im Herzen arbeitet ein ESP32‑C3 Mikrocontroller von Espressif. Er bringt moderne Features mit:

  • RISC‑V Architektur – stromsparend und effizient
  • Wi‑Fi (802.11 b/g/n) – für schnelle Netzwerkanbindung
  • Bluetooth 5 (LE) – für drahtlose Kommunikation mit Sensoren oder Smartphones
  • GPIO‑Pins – für eigene Projekte mit Sensoren, LEDs oder Motoren

Weitere Details im Hersteller Manuel

Warum ist das spannend?

  • Kompakte Größe: Mit nur 20 × 25 mm passt das Board in fast jedes Projektgehäuse.
  • Integriertes Display: Das OLED zeigt direkt Informationen an, ohne dass ein externes Modul nötig ist. Das kleine 0,42″-Display ist etwas speziell: es arbeitet nicht exakt wie andere SSD1306-Module. Es hat eine Auflösung von nur 72x40 Pixel. Mit dieser U8g2-Library funktioniert es stabil.
  • All‑in‑One Lösung: WLAN, Bluetooth und Display in einem einzigen Board.
  • Einsteigerfreundlich: Dank Arduino‑IDE und Bibliotheken wie U8g2 lässt sich das Display einfach ansteuern.

Mögliche Projekte

  • Mini‑IoT‑Server: Das Board als Access Point mit Statusanzeige auf dem OLED.
  • Sensoranzeige: zB. Statuswerte, Temperatur, Luftfeuchtigkeit oder CO₂‑Werte direkt auf dem Display.
  • Wearables: Durch die kleine Bauform ideal für tragbare Geräte.
  • SmartHome‑Controller: Anzeigen von WLAN‑Status oder Steuerung kleiner Geräte.

Code

#include <U8g2lib.h>
#include <Wire.h>

// Konstruktor 
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, U8X8_PIN_NONE, 6, 5);
int width = 72;
int height = 40;
int xOffset = 28; 
int yOffset = 16; 
void setup(void)
{
     delay(1000);
     u8g2.begin();
     u8g2.setContrast(255); // maximum contrast  
     u8g2.setBusClock(400000); //400kHz I2C 
     u8g2.setFont(u8g2_font_ncenB10_tr);
}


void loop(void) {
    u8g2.clearBuffer();

    // Rahmen mittig im 72x40 Bereich
    //u8g2.drawFrame(xOffset, yOffset, width, height);

    // Schrift einstellen
    u8g2.setFont(u8g2_font_6x10_tr);

    // Erste Zeile "Prilchen"
    int w1 = u8g2.getStrWidth("Prilchen");
    int x1 = xOffset + (width - w1) / 2;
    int y1 = yOffset + 18;   // obere Zeile
    u8g2.setCursor(x1, y1);
    u8g2.print("Prilchen");

    // Zweite Zeile "Labs"
    int w2 = u8g2.getStrWidth("Labs");
    int x2 = xOffset + (width - w2) / 2;
    int y2 = yOffset + 32;   // untere Zeile
    u8g2.setCursor(x2, y2);
    u8g2.print("Labs");

    u8g2.sendBuffer();
}
,
Datenschutz-Übersicht

Diese Website verwendet Cookies, damit wir dir die bestmögliche Benutzerkomfort bieten können. Cookie-Informationen werden in deinem Browser gespeichert und führen Funktionen aus, wie das Wiedererkennen von dir, wenn du auf unsere Website zurückkehrst und hilft uns zu verstehen, welche Abschnitte der Website für dich am interessantesten und nützlichsten sind.