#include #include #include #include #include "esp_wifi.h" // <- gives access to esp_wifi_get_mac #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1); void setup() { Serial.begin(115200); delay(1000); // ---- Force WiFi driver init ---- WiFi.mode(WIFI_STA); // ---- Get MAC using esp_wifi_get_mac ---- uint8_t mac[6]; esp_wifi_get_mac(WIFI_IF_STA, mac); char macStr[18]; sprintf(macStr, "%02X:%02X:%02X:%02X:%02X:%02X", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); Serial.print("MAC Address: "); Serial.println(macStr); // ---- Init OLED ---- if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { Serial.println(F("SSD1306 allocation failed")); for (;;); } display.clearDisplay(); display.setTextSize(1); display.setTextColor(SSD1306_WHITE); display.setCursor(0, 0); display.println("MAC Address:"); display.println(macStr); display.display(); } void loop() { // nothing here }