Carte de developpment ESP32 WT32-ETH01 Ethernet double mode Wifi et Bluetooth

UGS : DAR-03-B13

En stock

Carte de développement ESP32 WT32-ETH01 triple connectivité Ethernet 10/100 Mbps WiFi 802.11 b/g/n et Bluetooth 4.2. Processeur dual-core 240 MHz. 4 Mo Flash 520 Ko SRAM. Contrôleur LAN8720 avec connecteur RJ45 intégré. Compatible Arduino IDE ESP-IDF PlatformIO et MicroPython. Idéale pour passerelle IoT domotique industrielle et applications réseau critiques nécessitant une connexion stable et fiable.

58,400 TND

En stock

Check
Livraison gratuite pour commandes plus de 200 TND

Carte ESP32 WT32-ETH01

La carte de développement ESP32 WT32-ETH01 est une plateforme embarquée exceptionnellement polyvalente combinant dans un format ultra-compact les puissantes capacités sans fil du module ESP32 avec une interface Ethernet filaire basée sur le contrôleur LAN8720. Cette combinaison unique offre une triple connectivité : WiFi 802.11 b/g/nBluetooth 4.2 Classic + BLE et Ethernet 10/100 Mbps faisant de la WT32-ETH01 la plateforme de développement IoT la plus complète et la plus fiable du marché pour les applications nécessitant une connexion réseau stable et performante.

Contrairement aux cartes ESP32 classiques qui se limitent au WiFi et au Bluetooth la WT32-ETH01 ajoute la possibilité d’une connexion Ethernet câblée éliminant les problèmes de connectivité WiFi (interférences portée limitée latence variable) et offrant une fiabilité de communication réseau de niveau industriel. Cette carte est idéale pour les applications domotiques critiques les systèmes de contrôle industriel les passerelles IoT et tous les projets nécessitant une connectivité réseau permanente et stable.


Triple connectivité : la force de la WT32-ETH01

1. Ethernet 10/100 Mbps avec LAN8720

L’interface Ethernet de la WT32-ETH01 est gérée par le contrôleur LAN8720 de Microchip Technology un PHY Ethernet 10/100BASE-T de haute qualité :

  • Débit : 10 Mbps ou 100 Mbps (auto-négociation)
  • Interface : RMII (Reduced Media Independent Interface) connectée à l’ESP32
  • Connecteur : RJ45 intégré avec LEDs de statut (Link et Activity)
  • Protocoles : TCP/IP UDP HTTP MQTT CoAP et tous les protocoles réseau standards
  • Avantages :
    • Latence constante et prévisible
    • Bande passante garantie sans interférences
    • Connexion permanente sans déconnexions aléatoires
    • Sécurité renforcée : pas de risque d’interception WiFi
    • Distance : jusqu’à 100 mètres de câble Cat5/Cat6
    • Alimentation PoE possible avec splitter externe

2. WiFi 802.11 b/g/n intégré

Le module ESP32 intègre un contrôleur WiFi complet :

  • Fréquence : 2.4 GHz
  • Normes : 802.11 b/g/n
  • Débit : jusqu’à 150 Mbps
  • Modes : Station (STA) Point d’Accès (AP) et mixte STA+AP
  • Sécurité : WPA WPA2 WPA3 et WEP
  • Applications : configuration à distance OTA updates interface web et connexion de secours

3. Bluetooth 4.2 Classic + BLE

  • Bluetooth Classic : streaming audio communication série sans fil
  • Bluetooth Low Energy (BLE) : capteurs connectés beacons et appareils basse consommation
  • Portée : jusqu’à 30 mètres en espace ouvert
  • Applications : configuration locale via smartphone appariement de périphériques et telemetrie BLE

Le module ESP32 : puissance de calcul et polyvalence

Le cœur de la WT32-ETH01 est le module ESP32 d’Espressif Systems :

Processeur

  • Architecture : Xtensa LX6 dual-core
  • Fréquence : jusqu’à 240 MHz
  • Coprocesseur ULP : pour opérations en mode basse consommation

Mémoire

  • Flash : 4 Mo (stockage programme et données)
  • SRAM : 520 Ko (mémoire d’exécution)
  • ROM : 448 Ko (bootloader et fonctions système)
  • RTC SRAM : 16 Ko (données persistantes en deep-sleep)

Périphériques intégrés

  • ADC : 12 canaux 12 bits
  • DAC : 2 canaux 8 bits
  • PWM : 16 canaux
  • I2C : 2 bus configurables
  • SPI : 3 bus
  • UART : 3 ports
  • I2S : 2 bus audio
  • Capteurs tactiles : 10 entrées capacitives
  • Capteur Hall et capteur température intégrés

Brochage et connectique de la WT32-ETH01

text

 

┌─────────────────────────────────────────────────┐
│           ESP32 WT32-ETH01                       │
│                                                  │
│  ┌─────────┐   ┌──────────┐   ┌──────────┐      │
│  │  ESP32  │   │ LAN8720  │   │   RJ45   │      │
│  │ Module  │◄──┤   PHY    ├──►│ Ethernet │      │
│  │         │   │  RMII    │   │          │      │
│  └─────────┘   └──────────┘   └──────────┘      │
│                                                  │
│  ┌──────────────────────────────────────┐        │
│  │  GPIO Disponibles (broches exposées) │        │
│  │                                      │        │
│  │  IO0  IO2  IO4  IO12  IO14  IO15    │        │
│  │  IO17 IO32 IO33 IO34  IO35  IO36    │        │
│  │  IO39 RXD  TXD  GND   3V3  5V      │        │
│  └──────────────────────────────────────┘        │
│                                                  │
│  [  LED Link  ]   [  LED Activity  ]             │
│  [    Bouton Reset    ]                          │
└─────────────────────────────────────────────────┘

Description des broches disponibles

Broche Fonction Type Remarques
5V Alimentation entrée PWR Via USB ou broche externe
3V3 Sortie 3.3V régulée PWR 600 mA max
GND Masse PWR Référence commune
IO0 GPIO / Boot mode I/O Pull-up requis au boot
IO2 GPIO / ADC I/O LED embarquée sur certaines versions
IO4 GPIO / ADC / Touch I/O Usage général
IO12 GPIO / ADC / Touch I/O MTDI – attention au boot
IO14 GPIO / ADC / Touch / PWM I/O Usage général
IO15 GPIO / ADC / Touch I/O MTDO
IO17 GPIO / UART I/O Usage général
IO32 GPIO / ADC / Touch I/O Usage général
IO33 GPIO / ADC / Touch I/O Usage général
IO34 GPIO / ADC (entrée seule) IN Entrée analogique uniquement
IO35 GPIO / ADC (entrée seule) IN Entrée analogique uniquement
IO36 GPIO / ADC (entrée seule) IN Entrée analogique uniquement
IO39 GPIO / ADC (entrée seule) IN Entrée analogique uniquement
RXD UART RX I/O Programmation et debug
TXD UART TX I/O Programmation et debug

Broches réservées au LAN8720 (non disponibles)

GPIO Fonction réservée Interface
GPIO 0 REF_CLK LAN8720 RMII
GPIO 16 CLK_OUT LAN8720 RMII
GPIO 17 MDIO SMI
GPIO 18 MDCLK SMI
GPIO 19 TXD0 RMII TX
GPIO 21 TX_EN RMII TX
GPIO 22 TXD1 RMII TX
GPIO 23 RXD1 RMII RX
GPIO 25 RXD0 RMII RX
GPIO 26 RX_ER RMII RX
GPIO 27 CRS_DV RMII RX

Environnements de développement compatibles

Arduino IDE

Installation via le board manager ESP32 d’Espressif. Configuration spécifique pour activer l’Ethernet :

C++

 

#include <ETH.h>
#include <WiFi.h>

// Configuration WT32-ETH01
#define ETH_CLK_MODE    ETH_CLOCK_GPIO0_IN
#define ETH_POWER_PIN   -1
#define ETH_TYPE        ETH_PHY_LAN8720
#define ETH_ADDR        1
#define ETH_MDC_PIN     23
#define ETH_MDIO_PIN    18

bool ethConnecte = false;

void WiFiEvent(WiFiEvent_t event) {
  switch (event) {
    case ARDUINO_EVENT_ETH_START:
      Serial.println("Ethernet démarré");
      ETH.setHostname("wt32-eth01");
      break;
    case ARDUINO_EVENT_ETH_CONNECTED:
      Serial.println("Ethernet connecté");
      break;
    case ARDUINO_EVENT_ETH_GOT_IP:
      Serial.print("Adresse IP : ");
      Serial.println(ETH.localIP());
      ethConnecte = true;
      break;
    case ARDUINO_EVENT_ETH_DISCONNECTED:
      Serial.println("Ethernet déconnecté");
      ethConnecte = false;
      break;
    default:
      break;
  }
}

void setup() {
  Serial.begin(115200);
  WiFi.onEvent(WiFiEvent);

  // Initialisation Ethernet
  ETH.begin(ETH_ADDR, ETH_POWER_PIN, ETH_MDC_PIN,
            ETH_MDIO_PIN, ETH_TYPE, ETH_CLK_MODE);
}

void loop() {
  if (ethConnecte) {
    // Votre code réseau ici
  }
}

ESP-IDF (Framework natif Espressif)

Framework complet pour développement professionnel avec accès à toutes les fonctionnalités bas niveau de l’ESP32 et de l’interface Ethernet.

PlatformIO

Environnement de développement professionnel intégré à Visual Studio Code offrant une gestion avancée des bibliothèques et du débogage pour la WT32-ETH01.

MicroPython

Programmation en Python avec support Ethernet via les bibliothèques réseau MicroPython.


Exemples de projets avec la WT32-ETH01

Serveur Web embarqué avec Ethernet

C++

 

#include <ETH.h>
#include <WebServer.h>

WebServer server(80);

void handleRoot() {
  String html = "<!DOCTYPE html><html>";
  html += "<head><title>WT32-ETH01</title></head>";
  html += "<body>";
  html += "<h1>Serveur Web WT32-ETH01</h1>";
  html += "<p>IP Ethernet : " + ETH.localIP().toString() + "</p>";
  html += "<p>Vitesse : " + String(ETH.linkSpeed()) + " Mbps</p>";
  html += "<p>MAC : " + ETH.macAddress() + "</p>";
  html += "<p>Uptime : " + String(millis()/1000) + " secondes</p>";
  html += "</body></html>";
  server.send(200, "text/html", html);
}

void handleAPI() {
  int lecture = analogRead(34);
  String json = "{";
  json += "\"ip\":\"" + ETH.localIP().toString() + "\",";
  json += "\"adc\":" + String(lecture) + ",";
  json += "\"uptime\":" + String(millis()/1000);
  json += "}";
  server.send(200, "application/json", json);
}

void setup() {
  Serial.begin(115200);
  // Initialisation ETH (voir code précédent)

  server.on("/", handleRoot);
  server.on("/api", handleAPI);
  server.begin();
  Serial.println("Serveur HTTP démarré");
}

void loop() {
  server.handleClient();
}

Client MQTT sur Ethernet

C++

 

#include <ETH.h>
#include <PubSubClient.h>

const char* mqtt_server = "192.168.1.100";
const int   mqtt_port   = 1883;
const char* mqtt_topic  = "wt32/capteur";

WiFiClient ethClient;
PubSubClient mqtt(ethClient);

void callback(char* topic, byte* payload, unsigned int length) {
  Serial.print("Message reçu [");
  Serial.print(topic);
  Serial.print("] : ");
  for (int i = 0; i < length; i++) {
    Serial.print((char)payload[i]);
  }
  Serial.println();
}

void reconnectMQTT() {
  while (!mqtt.connected()) {
    Serial.print("Connexion MQTT...");
    if (mqtt.connect("wt32-eth01-client")) {
      Serial.println("Connecté !");
      mqtt.subscribe("wt32/commandes");
    } else {
      Serial.print("Erreur : ");
      Serial.println(mqtt.state());
      delay(5000);
    }
  }
}

void setup() {
  Serial.begin(115200);
  // Initialisation ETH...

  mqtt.setServer(mqtt_server, mqtt_port);
  mqtt.setCallback(callback);
}

void loop() {
  if (!mqtt.connected()) reconnectMQTT();
  mqtt.loop();

  // Publication toutes les 5 secondes
  static unsigned long dernierEnvoi = 0;
  if (millis() - dernierEnvoi > 5000) {
    int valeur = analogRead(34);
    String payload = String(valeur);
    mqtt.publish(mqtt_topic, payload.c_str());
    dernierEnvoi = millis();
  }
}

Applications de la WT32-ETH01

Domotique et Smart Home

  • Passerelle domotique centrale connectant appareils WiFi Bluetooth et Ethernet
  • Contrôleur de volets roulants et éclairage avec interface web
  • Thermostat intelligent connecté au réseau local et à Home Assistant
  • Système de surveillance avec caméra IP et stockage local
  • Gestionnaire d’énergie avec monitoring de consommation via Ethernet
  • Centrale d’alarme connectée avec notifications push et SMS

Industrie et automatisation

  • Passerelle Modbus TCP vers système SCADA
  • Concentrateur de données capteurs industriels vers cloud
  • Contrôleur PLC simplifié pour automatismes légers
  • Système de monitoring de machines avec dashboard web
  • Passerelle protocoles : CAN BUS vers Ethernet
  • Système de traçabilité avec lecteur RFID et base de données

Réseau et infrastructure

  • Passerelle IoT WiFi/BLE vers Ethernet pour capteurs distants
  • Proxy MQTT et broker léger pour réseau local
  • Serveur DNS local pour réseau embarqué
  • Contrôleur NTP synchronisation d’horloges sur réseau
  • Sniffer réseau léger pour diagnostic et debugging
  • Point d’accès WiFi avec portail captif

Projets avancés DIY

  • Station météo professionnelle avec transmission Ethernet
  • Système de contrôle d’aquarium ou de serre connecté
  • Enregistreur de données (datalogger) avec serveur FTP
  • Tableau de bord multi-capteurs avec interface web responsive
  • Système de présence avec détection BLE et log réseau
  • Contrôleur d’irrigation intelligent connecté au réseau

Conseils d’utilisation et bonnes pratiques

Alimentation

  • Alimentez la WT32-ETH01 via les broches 5V et GND avec une alimentation capable de fournir au moins 500 mA
  • Pour les applications avec forte charge réseau prévoyez 800 mA à 1A
  • Ajoutez des condensateurs de découplage (100nF + 10µF) au plus près des broches d’alimentation
  • Utilisez une alimentation régulée et filtrée pour éviter les plantages réseau

Câblage Ethernet

  • Utilisez un câble Cat5e ou Cat6 droit (straight-through) pour connexion à un switch ou routeur
  • Utilisez un câble croisé (crossover) pour une connexion directe PC-WT32-ETH01
  • La plupart des switchs modernes supportent l’auto-MDIX (câble droit dans tous les cas)
  • Longueur maximale de câble : 100 mètres par segment

GPIO et broches réservées

  • Vérifiez toujours quelles broches sont réservées au LAN8720 avant d’utiliser un GPIO
  • En cas de conflit avec l’Ethernet certains GPIO seront non fonctionnels
  • Utilisez de préférence : IO0 IO2 IO4 IO12 IO14 IO15 IO32 IO33 IO34 IO35 IO36 IO39

OTA (Over-The-Air updates)

  • La WT32-ETH01 supporte les mises à jour OTA via Ethernet et WiFi
  • Implémentez l’OTA dès le début du projet pour faciliter les mises à jour futures
  • Utilisez ArduinoOTA ou esp_https_ota selon votre framework

La plateforme IoT industrielle ultime

La carte de développement ESP32 WT32-ETH01 représente l’évolution naturelle de l’ESP32 pour les applications IoT professionnelles et industrielles. Sa triple connectivité Ethernet WiFi Bluetooth son processeur dual-core 240 MHz et sa compatibilité avec l’écosystème Arduino et ESP-IDF en font la plateforme de référence pour tous les projets nécessitant une connectivité réseau fiable et permanente.

Commandez dès maintenant votre carte ESP32 WT32-ETH01 et connectez vos projets au réseau avec une fiabilité professionnelle !


Tableau des caractéristiques techniques

Caractéristique Détails
Modèle WT32-ETH01
Module ESP32 ESP32-D0WD (Espressif Systems)
Processeur Xtensa LX6 Dual-Core
Fréquence CPU Jusqu’à 240 MHz
Flash 4 Mo
SRAM 520 Ko
Contrôleur Ethernet LAN8720 (Microchip)
Débit Ethernet 10/100 Mbps (auto-négociation)
Connecteur Ethernet RJ45 intégré avec LEDs
Interface PHY RMII
WiFi 802.11 b/g/n 2.4 GHz
Bluetooth 4.2 Classic + BLE
GPIO disponibles 14 broches exposées
ADC 12 canaux 12 bits
DAC 2 canaux 8 bits
PWM 16 canaux
UART 3 ports
I2C 2 bus
SPI 3 bus
I2S 2 bus
Tension d’alimentation 5V DC
Tension logique 3.3V
Courant max GPIO 40 mA par broche
Courant alimentation 500 mA min recommandé
Bouton Reset Oui
LED de statut Link + Activity Ethernet
Dimensions ~55 x 35 x 15 mm
Poids ~12 g
Température de fonctionnement -40°C à +85°C
Compatibilité logicielle Arduino IDE ESP-IDF PlatformIO MicroPython
Certifications FCC CE