Skip to content

Technik Blog

Programmieren | Arduino | ESP32 | MicroPython | Python | Raspberry Pi | Raspberry Pi Pico

Menu
  • Smarthome
  • Gartenautomation
  • Arduino
  • ESP32 & Co.
  • Raspberry Pi & Pico
  • Solo Mining
  • Deutsch
  • English
Menu

Review: Elecrow CrowPanel – Das perfekte Display für ESP32-Projekte?

Posted on 4. November 20246. November 2024 by Stefan Draeger

In diesem Beitrag möchte ich untersuchen, ob das CrowPanel von Elecrow das ideale Display für deine ESP32-Projekte darstellt.

Review: Elecrow CrowPanel – Das perfekte Display für ESP32-Projekte?
Dieses Video auf YouTube ansehen.

Disclaimer: Das CrowPanel wurde mir kostenfrei von Elecrow zur Verfügung gestellt. Trotz dieser Bereitstellung bleibt meine Bewertung objektiv und unabhängig. Alle im Beitrag geäußerten Meinungen sind meine eigenen und basieren auf meinen persönlichen Erfahrungen mit dem Produkt.

Das Gehäuse ist äußerst poliert und spiegelnd, was auf der einen Seite sehr cool und edel aussieht, auf der anderen Seite jedoch dafür sorgt, dass dieser Staub magisch anzieht.

Inhaltsverzeichnis

  • Technische Daten des CrowPanel mit ESP32 Chip
  • Lieferumfang
  • Aufbau
    • GPIO Anschlüsse
    • Hinweis zum Speaker (SPK) und Batterieanschluss
  • Programmieren des CrowPanel in der Arduino IDE
  • Installieren des ESP32
    • Benötigte Bibliotheken für die Programmierung in der Arduino IDE
    • Beispiel – Taster & LEDs am CrowPanel via Grovekabel
  • Programmieren des CrowPanel in MicroPython
    • Flashen des CrowPanel für MicroPython
    • Beispiel – Wechselblinken zweier LEDs in MicroPython programmieren
    • Beispiel – Schalten von LEDs mit Taster
  • Fazit zum 2,4″ Elecrow CrowPanel
    • Ausblick
    • Alternativen

Technische Daten des CrowPanel mit ESP32 Chip

Zunächst die technischen Daten des Displays:

Modell2,4 Zoll ESP32 Display
HauptprozessorESP32-WROOM-32-N4
Auflösung240 x 320
Farbtiefe262K Farben
Touch-TypResistiver Touchscreen
Touch-PanelTN Panel
BildschirmTFT-LCD Bildschirm
Display-TreiberILI9341V
Schnittstellen1x TF Kartensteckplatz, 1x I2C, 1x GPIO, 1x Lautsprecher, 1x UART1, 1x UART0
TastenBOOT-Taste und Reset-Taste

Auf der offiziellen Seite von Elecrow findest du weitere Dokumentation zu diesem Display.

Lieferumfang

Zum Lieferumfang des Mikrocontrollers gehört:

  • der Mikrocontroller mit Display,
  • ein USB-Datenkabel,
  • ein Datenkabel,
  • ein Gehäuse,
  • ein Eingabestift

Aufbau

Auf der Rückseite des Mikrocontrollers findest du diverse Schnittstellen, an welche du weitere Sensoren/Aktoren anschließen und programmieren kannst.

GPIO Anschlüsse

Die GPIOs können via HY2.0-4P Anschluss abgegriffen werden. Dazu liegt dem Gerät ein Kabel bei, wenn du alle Anschlüsse gleichzeitig abgreifen möchtest, dann benötigst du noch zwei weitere Kabel, welche du für knapp 2€ zzgl. Versandkosten auf ebay.de* findest.

Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung!

UART1BeschreibungI2CBeschreibungGPIO_D
IO16RXDIO21SCLIO25
IO17TXDIO22SDAIO32
3.3V3.3V3.3V
GNDGNDGND

Hinweis zum Speaker (SPK) und Batterieanschluss

Die Anschlüsse für Speaker und der Batterie sind identisch, d.h. du kannst eventuell deine Batterie in den Sockel SPK stecken. Damit könntest du eventuell dein Board beschädigen, jedoch denke ich das dort eine Diode verbaut wurde, um dieses zu verhindern.

Programmieren des CrowPanel in der Arduino IDE

Das CrowPanel kann in der Arduino IDE, SquareLine Studio, Plattform IO programmiert werden. Der verbaute ESP32 Chip unterstützt hier die Sprachen C++ (Arduino & ESP-IDF) sowie MicroPython.

Interessant ist hier SquareLine Studio, welchem ich einen separaten Beitrag widmen möchte, da dieses für die Erstellung von Dashboards geeignet ist.

Nachfolgend möchte ich dir zeigen, wie du den Mikrocontroller mit TFT-Display & Touchfunktion in der Arduino IDE programmieren kannst. Ein sehr ähnliches Gerät habe ich dir bereits im Beitrag ESP32 Development Board mit 2,8 Zoll Touch Display: Programmieren für Anfänger vorgestellt.

Installieren des ESP32

Wenn bei dir noch nicht geschehen, dann muss der Boardtreiber für den ESP32 in der Arduino IDE eingerichtet werden. Dazu muss die nachfolgende URL zu den zusätzlichen Boardverwalter URLs hinzugefügt werden.

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

In der Arduino IDE navigieren wir dazu über Datei > Einstellungen zum Dialog Einstellungen und wählen dort die Schaltfläche (1) neben den zusätzlichen Boardverwalter URLs. Im neuen Dialog tragen wir die URL (2) ein und bestätigen dieses mit der Schaltfläche OK (3).

Im nächsten Schritt kann jetzt der Boardtreiber über den internen Boardverwalter (4) installieren.

Dort suchen wir nach esp32 (5) und wählen die Schaltfläche INSTALLIEREN (6). Da ich bereits den Treiber installiert habe, steht bei mir die Schaltfläche ENTFERNEN.

Benötigte Bibliotheken für die Programmierung in der Arduino IDE

Damit wir das TFT-Display programmieren können, benötigen wir eine zusätzliche Bibliothek, welche wir über den internen Bibliotheksverwalter installieren können.

Im internen Bibliotheksverwalter (1) suchst du nach „TFT_eSPI“ (2) und wählst dort die Schaltfläche „INSTALLIEREN“ (3).

Die Programmierung des TFT-Displays werde ich im angekündigten Beitrag zu SquareLine Studio behandeln. Nachfolgend gehe ich auf die Programmierung über die 3 Grove Schnittstellen ein.

Beispiel – Taster & LEDs am CrowPanel via Grovekabel

Über die freien GPIO-Pins, die wir mit einem speziellen Anschlusskabel nutzen können, lassen sich verschiedene Sensoren und Aktoren ansteuern. In diesem Beispiel werden wir zwei LEDs und zwei Taster verbinden. Die Schaltung ist so aufgebaut, dass jeweils ein blauer und ein roter Taster die zugehörige LED (rot und blau) ein- und ausschaltet.

Schaltung - LEDs & Taster am CrowPanel
Schaltung – LEDs & Taster am CrowPanel
einfaches Programm: CrowPanel mit Taster und LEDsHerunterladen
//rote LED am GPIO21 angeschlossen
#define ledRot 21
//blaue LED am GPIO22 angeschlossen
#define ledBlau 22

//roter Taster am GPIO25 angeschlossen
#define tasterRot 25
//baluer LED am GPIO32 angeschlossen
#define tasterBlau 32

//Felder zum speichern der Zustände der LEDs
bool statusLedRot = false;
bool statusLedBlau = false;

void setup() {
  //Pins der LEDs als Ausgang definieren
  pinMode(ledRot, OUTPUT);
  pinMode(ledBlau, OUTPUT);
  //Pins der Taster als Eingang über den
  //internen 10 kOhm Widerstand leiten
  pinMode(tasterRot, INPUT_PULLUP);
  pinMode(tasterBlau, INPUT_PULLUP);
}

void loop() {
  //Wenn der Taster betätigt wird, erhalten
  //wir auf dem Pin ein LOW Signal
  if (digitalRead(tasterRot) == LOW) {
    //umkehren des Zustandes der LED
    statusLedRot = !statusLedRot;
    digitalWrite(ledRot, statusLedRot);
    //eine Pause von 250 ms. damit der Taster entprellt wird
    delay(250);
  }

  if (digitalRead(tasterBlau) == LOW) {
    statusLedBlau = !statusLedBlau;
    digitalWrite(ledBlau, statusLedBlau);
    delay(250);
  }
}

Programmieren des CrowPanel in MicroPython

Flashen des CrowPanel für MicroPython

Den verbauten ESP32 Chip können wir ebenso recht einfach in MicroPython (sowie CircuitPython) programmieren. Dazu müssen wir diesen jedoch mit einer passenden Firmware flashen.

Diesen Vorgang können wir uns mit der Thonny IDE welche du unter https://thonny.org/ für Windows, macOS und Linux herunterladen kannst, sehr einfach in wenigen Schritten lösen.

Wie erwähnt arbeitet auf dem Elecrow CrowPanel ein ESP32, für diesen gibt es auf der Hauptseite von MicroPython eine passende Firmware als BIN-Datei zum Herunterladen. Ebenso findest du in der offiziellen Dokumentation eine Firmware, welche jedoch aus dem Jahr 2022 stammt.

Nach dem erfolgreichen Flashen des Mikrocontrollers wählen wir diesen im entsprechenden Interface aus und drücken die Stopp-Taste. In der Shell sollte nun die Firmware-Versionsnummer angezeigt werden.

MicroPython v1.24.0 on 2024-10-25; Generic ESP32 module with ESP32
Type "help()" for more information.

Beispiel – Wechselblinken zweier LEDs in MicroPython programmieren

Das erste kleine Beispiel mit MicroPython ist, das steuern von LEDs, dazu benötigen wir lediglich:

  • zwei 5 mm LEDs*,
  • zwei 220 Ohm Vorwiderstände*,
  • ein 170 Pin Breadboard*, sowie
  • ein Anschlußkabel mit Stecker*

Im Beitrag DIY Grove Shield #1: LED Wechselblinker habe ich dir gezeigt wie du dir mit wenigen Bauteilen ein Shield bauen kannst welches zwei LEDs und eine Grove Schnittstelle hat.

Programm: Wechselblinken zweier LEDs am CrowPanelHerunterladen
# importieren der Module für den Zugriff auf
# die GPIOs
import machine
# importieren des Modules für den Zugriff auf
# die Funktionen für Zeit
import time

# rote LED am GPIO21 angeschlossen
ledRot = machine.Pin(21, machine.Pin.OUT)
# blaue LED am GPIO16 angeschlossen
ledBlau = machine.Pin(22, machine.Pin.OUT)

# starten der Endlosschleife
while True:
    # deaktivieren der roten LED
    ledRot.value(0);
    # aktivieren der blauen LED
    ledBlau.value(1);
    # eine Pause von 250 ms.
    time.sleep(0.25)
    # aktivieren der roten LED
    ledRot.value(1);
    # deaktivieren der blauen LED
    ledBlau.value(0);
    # eine Pause von 250 ms.
    time.sleep(0.25)

Beispiel – Schalten von LEDs mit Taster

Wie du dir dieses kleine Modul selber bauen kannst habe ich dir ebenso im Beitrag DIY Grove Shield #2: 2fach Taster Shield erläutert.

Mit zwei zusätzliche Taster können wir nun diese LEDs umschalten. In meinem Fall nutze ich dazu ein fertiges Modul von Seedstudio mit Grove Schnittstelle.

Grove Dual Button Modul
Grove Dual Button Modul
2fach Taster Shield mit Grove Schnittstelle
2fach Taster Shield mit Grove Schnittstelle
Programm: Schalten von zwei LEDs mit TasterHerunterladen
# importieren der Module für den Zugriff auf
# die GPIOs
import machine
# importieren des Modules für den Zugriff auf
# die Funktionen für Zeit
import time

# rote LED am GPIO21 angeschlossen
ledRot = machine.Pin(21, machine.Pin.OUT)
# blaue LED am GPIO16 angeschlossen
ledBlau = machine.Pin(22, machine.Pin.OUT)

#roter Taster am GPIO25
tasterRot = machine.Pin(25, machine.Pin.IN, machine.Pin.PULL_UP)
#blauer Taster am GPIO32
tasterBlau = machine.Pin(32, machine.Pin.IN, machine.Pin.PULL_UP)

# Felder zum speichern der zustände von den LEDs
statusLedRot = False
statusLedBlau = False

# starten der Endlosschleife
while True:
   # Wenn der rote Taster betätigt wurde, dann...
   if not tasterRot.value():
      # umkehren des Status der LED 
      statusLedRot = not statusLedRot
      # Abhängig vom Status des Feldes wird die
      # LED aktiviert oder deaktiviert
      ledRot.value(0 if statusLedRot else 1)
      # eine kleine Pause von 250 ms. um den Taster zu entprellen
      time.sleep(0.25)
        
   if not tasterBlau.value():
      statusLedBlau = not statusLedBlau
      ledBlau.value(0 if statusLedBlau else 1)
      time.sleep(0.25)

Fazit zum 2,4″ Elecrow CrowPanel

Das Display ist im Grunde nicht schlecht, beinhaltet jedoch keine echte Innovation. Die Programmierung des TFT-Displays in der Arduino IDE ist etwas schwieriger und hat bei mir bisher nicht funktioniert. Wie jedoch aus den Beispielen zu entnehmen ist, funktioniert die Ansteuerung der GPIOs in der Arduino IDE sowie in MicroPython reibungslos.

Ausblick

Im nächsten Beitrag zum CrowPanel würde ich dieses einmal mit SquareLine Studio programmieren und prüfen, ob dieses dort besser integriert ist.

Alternativen

Wenn du eine einfache alternative suchst, dann schaue dir doch einmal das Board ESP32-2432S028R an. Dieses hat ein größeres Display und ist nach derzeitiger Information auch einfacher zu programmieren.

1 thought on “Review: Elecrow CrowPanel – Das perfekte Display für ESP32-Projekte?”

  1. Pingback: Elecrow CrowPanels vorgestellt: OLED, E-Paper und HMI-Display im Überblick - Technik Blog

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Fragen oder Feedback?

Du hast eine Idee, brauchst Hilfe oder möchtest Feedback loswerden?
Support-Ticket erstellen

Newsletter abonnieren

Bleib auf dem Laufenden: Erhalte regelmäßig Updates zu neuen Projekten, Tutorials und Tipps rund um Arduino, ESP32 und mehr – direkt in dein Postfach.

Jetzt Newsletter abonnieren

Unterstütze meinen Blog

Wenn dir meine Inhalte gefallen, freue ich mich über deine Unterstützung auf Tipeee.
So hilfst du mit, den Blog am Leben zu halten und neue Beiträge zu ermöglichen.

draeger-it.blog auf Tipeee unterstützen

Vielen Dank für deinen Support!
– Stefan Draeger

Kategorien

Tools

  • Unix-Zeitstempel-Rechner
  • ASCII Tabelle
  • Spannung, Strom, Widerstand und Leistung berechnen
  • Widerstandsrechner
  • 8×8 LED Matrix Tool
  • 8×16 LED Matrix Modul von Keyestudio
  • 16×16 LED Matrix – Generator

Links

Blogverzeichnis Bloggerei.de TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste Blogverzeichnis trusted-blogs.com

Stefan Draeger
Königsberger Str. 13
38364 Schöningen
Tel.: 01778501273
E-Mail: info@draeger-it.blog

Folge mir auf

link zu Fabook
link zu LinkedIn
link zu YouTube
link zu TikTok
link zu Pinterest
link zu Instagram
  • Impressum
  • Datenschutzerklärung
  • Disclaimer
  • Cookie-Richtlinie (EU)
©2025 Technik Blog | Built using WordPress and Responsive Blogily theme by Superb
Cookie-Zustimmung verwalten
Wir verwenden Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wir tun dies, um das Surferlebnis zu verbessern und um personalisierte Werbung anzuzeigen. Wenn Sie diesen Technologien zustimmen, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn Sie Ihre Zustimmung nicht erteilen oder zurückziehen, können bestimmte Funktionen beeinträchtigt werden.
Funktional Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt. Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.
Optionen verwalten Dienste verwalten Verwalten von {vendor_count}-Lieferanten Lese mehr über diese Zwecke
Einstellungen anzeigen
{title} {title} {title}