In dieser Anleitung wird erklärt, wie Sie mit der Arduino IDE die MAC-Adresse des ESP32- oder ESP8266-Entwicklungsboards erhalten. Außerdem zeigen wir, wie man die MAC-Adresse des Entwicklungsboards ändert.
Was ist eine MAC-Adresse?
Eine MAC-Adresse steht für Media Access Control Address, eine eindeutige Hardware-ID, die jedes Gerät in einem Netzwerk identifiziert.
Eine MAC-Adresse besteht aus sechs Gruppen zweistelliger hexadezimaler Ziffern, die durch Doppelpunkte getrennt sind, zum Beispiel: 32:AE:A7:04:6D:66 .
Die MAC-Adresse wird vom Hersteller zugewiesen, Sie können aber auch eine benutzerdefinierte MAC-Adresse für Ihr Entwicklungsboard angeben. Allerdings kehrt die Karte jedes Mal, wenn sie zurückgesetzt wird, zu ihrer ursprünglichen MAC-Adresse zurück. Daher müssen Sie den Code zum Festlegen der benutzerdefinierten MAC-Adresse in jede Skizze einschließen.
Holen Sie sich die ESP32- oder ESP8266-MAC-Adresse
Um die MAC-Adresse Ihres Boards zu erhalten, laden Sie einfach den folgenden Code auf den ESP32 oder ESP8266 hoch. Der Code ist mit beiden Boards kompatibel.
// Complete Instructions: https://RandomNerdTutorials.com/get-change-esp32-esp8266-mac-address-arduino/
#include <WiFi.h>
#include <esp_wifi.h>
// Set your new MAC Address
uint8_t newMACAddress[] = {0x32, 0xAE, 0xA4, 0x07, 0x0D, 0x66};
void setup(){
Serial.begin(115200);
Serial.println();
WiFi.mode(WIFI_STA);
Serial.print("[OLD] ESP32 Board MAC Address: ");
Serial.println(WiFi.macAddress());
// ESP32 Board add-on before version < 1.0.5
//esp_wifi_set_mac(ESP_IF_WIFI_STA, &newMACAddress[0]);
// ESP32 Board add-on after version > 1.0.5
esp_wifi_set_mac(WIFI_IF_STA, &newMACAddress[0]);
Serial.print("[NEW] ESP32 Board MAC Address: ");
Serial.println(WiFi.macAddress());
}
void loop(){
}
In der folgenden Zeile können Sie eine benutzerdefinierte MAC-Adresse festlegen:
uint8_t newMACAddress[] = {0x32, 0xAE, 0xA4, 0x07, 0x0D, 0x66};
Öffnen Sie nach dem Hochladen des Codes den seriellen Monitor mit einer Baudrate von 115200. Starten Sie den ESP32 neu und Sie sollten seine alte und neue MAC-Adresse erhalten.
ESP8266 MAC-Adresse ändern (Arduino IDE)
Der folgende Code legt eine benutzerdefinierte MAC-Adresse für das ESP8266-Entwicklungsboard fest.
// Complete Instructions: https://RandomNerdTutorials.com/get-change-esp32-esp8266-mac-address-arduino/
#include <ESP8266WiFi.h>
// Set your new MAC Address
uint8_t newMACAddress[] = {0x32, 0xAE, 0xA4, 0x07, 0x0D, 0x66};
void setup(){
Serial.begin(115200);
Serial.println();
WiFi.mode(WIFI_STA);
Serial.print("[OLD] ESP8266 Board MAC Address: ");
Serial.println(WiFi.macAddress());
// For Soft Access Point (AP) Mode
//wifi_set_macaddr(SOFTAP_IF, &newMACAddress[0]);
// For Station Mode
wifi_set_macaddr(STATION_IF, &newMACAddress[0]);
Serial.print("[NEW] ESP8266 Board MAC Address: ");
Serial.println(WiFi.macAddress());
}
void loop(){
}
Legen Sie Ihre benutzerdefinierte MAC-Adresse in den folgenden Zeilen fest:
uint8_t newMACAddress[] = {0x32, 0xAE, 0xA4, 0x07, 0x0D, 0x66};
Öffnen Sie nach dem Hochladen des Codes den seriellen Monitor mit einer Baudrate von 115200. Starten Sie den ESP8266 neu und Sie sollten seine alte und neue MAC-Adresse erhalten.
Zusammenfassen
In dieser Kurzanleitung zeigen wir Ihnen, wie Sie mithilfe der Arduino IDE die MAC-Adresse des ESP32- und ESP8266-Herstellers erhalten. Sie haben außerdem erfahren, wie Sie eine benutzerdefinierte MAC-Adresse für Ihr Entwicklungsboard festlegen.