Bonjour,
Voici les changements à apporter à la V14.11 pour pouvoir supporter les modules W5500
ligne 456:
ligne 723
Attention toutefois, avec le code que j'avais proposé le routeur passait en mode wifi si le module ethernet n'était pas détecté ou le câble réseau n'était pas connecté. Ce n'est pas le cas avec le code d'André: soit vous avez une configuration ethernet exclusive, soit vous avez une configuration wifi exclusive.
Voici les changements à apporter à la V14.11 pour pouvoir supporter les modules W5500
ligne 456:
Code :
// ajouts W5500
#define RJ45_CS 21 // SPI gpio pin number or (Default is SS 5 for ESP32)
#define SCK_PIN 15 // SPI gpio pin number or (Default is SCK 18 for ESP32)
#define MOSI_PIN 12 // SPI gpio pin number or (Default is MOSI 23 for ESP32)
#define MISO_PIN 39 // SPI gpio pin number or (Default is MISO 19 for ESP32)
#define DHCP_TIMEOUT 5000
// fin ajouts W5500
W5500Driver driver(RJ45_CS);
//EMACDriver driver(ETH_PHY_LAN8720, 23, 18, 16);
ligne 723
Code :
if (ESP32_Type == 10) {
Serial.println("Lancement de la liaison Ethernet"); //Ethernet (avant Horloge)
SPI.begin(SCK_PIN, MISO_PIN, MOSI_PIN, RJ45_CS); // affect gpio used by SPI3 device
Ethernet.init(driver);
WiFi.begin("dummy");
byte mac[6];
WiFi.macAddress(mac);
mac[0] = 0xDE;
mac[1] = 0xAD;
mac[2] = 0xBE;
Serial.printf("Adresse mac ethernet: %02x:%02x:%02x:%02x:%02x:%02x\n", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);
Ethernet.setHostname((const char *)hostname.c_str());
//Ethernet.hostname(hostname);
if (dhcpOn == 0) { //Static IP
//optional
//Adresse IP eventuelles
//optional
Ethernet.begin(mac, local_IP, primaryDNS, gateway, subnet);
delay(100);
Ethernet.begin(mac, local_IP, primaryDNS, gateway, subnet); //On s'y prend 2 fois. Parfois ne reussi pas au premier coup
delay(100);
StockMessage("Adresse IP Ethernet fixe : : " + Ethernet.localIP().toString());
} else {
Serial.println("Initialisation Ethernet par DHCP:");
if (Ethernet.begin(mac, DHCP_TIMEOUT)) {
StockMessage("Adresse IP Ethernet assignée par DHCP : " + Ethernet.localIP().toString());
} else {
Serial.println("Failed to configure Ethernet using DHCP");
delay(1);
}
}
Attention toutefois, avec le code que j'avais proposé le routeur passait en mode wifi si le module ethernet n'était pas détecté ou le câble réseau n'était pas connecté. Ce n'est pas le cas avec le code d'André: soit vous avez une configuration ethernet exclusive, soit vous avez une configuration wifi exclusive.