From effe724c418ae7b78e752f7382319e936cc2258a Mon Sep 17 00:00:00 2001 From: A C SREEDHAR REDDY Date: Tue, 19 Feb 2019 17:07:37 +0530 Subject: [PATCH 1/3] WiFi.macaddress() returns mac address --- libraries/WiFi/src/WiFiSTA.cpp | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/libraries/WiFi/src/WiFiSTA.cpp b/libraries/WiFi/src/WiFiSTA.cpp index b76dea05913..ff3529f82a5 100644 --- a/libraries/WiFi/src/WiFiSTA.cpp +++ b/libraries/WiFi/src/WiFiSTA.cpp @@ -415,9 +415,7 @@ IPAddress WiFiSTAClass::localIP() */ uint8_t* WiFiSTAClass::macAddress(uint8_t* mac) { - if(WiFiGenericClass::getMode() != WIFI_MODE_NULL){ - esp_wifi_get_mac(WIFI_IF_STA, mac); - } + esp_read_mac(mac, ESP_MAC_WIFI_STA); return mac; } @@ -429,11 +427,7 @@ String WiFiSTAClass::macAddress(void) { uint8_t mac[6]; char macStr[18] = { 0 }; - if(WiFiGenericClass::getMode() == WIFI_MODE_NULL){ - return String(); - } - esp_wifi_get_mac(WIFI_IF_STA, mac); - + esp_read_mac(mac, ESP_MAC_WIFI_STA); sprintf(macStr, "%02X:%02X:%02X:%02X:%02X:%02X", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); return String(macStr); } From 75f82088798b1be78ece07f6488117f5992da26f Mon Sep 17 00:00:00 2001 From: A C SREEDHAR REDDY Date: Tue, 19 Feb 2019 17:10:09 +0530 Subject: [PATCH 2/3] change description --- libraries/WiFi/src/WiFiSTA.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/WiFi/src/WiFiSTA.cpp b/libraries/WiFi/src/WiFiSTA.cpp index ff3529f82a5..c58a323bff7 100644 --- a/libraries/WiFi/src/WiFiSTA.cpp +++ b/libraries/WiFi/src/WiFiSTA.cpp @@ -1,5 +1,5 @@ /* - ESP8266WiFiSTA.cpp - WiFi library for esp8266 + WiFiSTA.cpp - WiFi library for esp32 Copyright (c) 2014 Ivan Grokhotkov. All rights reserved. This file is part of the esp8266 core for Arduino environment. From 2e7921541389b70395abc641594f44bef5634c31 Mon Sep 17 00:00:00 2001 From: A C SREEDHAR REDDY Date: Wed, 20 Feb 2019 21:04:19 +0530 Subject: [PATCH 3/3] return macaddress when WiFi mode is WIFI_MODE_NULL --- libraries/WiFi/src/WiFiSTA.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/libraries/WiFi/src/WiFiSTA.cpp b/libraries/WiFi/src/WiFiSTA.cpp index c58a323bff7..a3d40102374 100644 --- a/libraries/WiFi/src/WiFiSTA.cpp +++ b/libraries/WiFi/src/WiFiSTA.cpp @@ -415,7 +415,12 @@ IPAddress WiFiSTAClass::localIP() */ uint8_t* WiFiSTAClass::macAddress(uint8_t* mac) { - esp_read_mac(mac, ESP_MAC_WIFI_STA); + if(WiFiGenericClass::getMode() != WIFI_MODE_NULL){ + esp_wifi_get_mac(WIFI_IF_STA, mac); + } + else{ + esp_read_mac(mac, ESP_MAC_WIFI_STA); + } return mac; } @@ -427,7 +432,12 @@ String WiFiSTAClass::macAddress(void) { uint8_t mac[6]; char macStr[18] = { 0 }; - esp_read_mac(mac, ESP_MAC_WIFI_STA); + if(WiFiGenericClass::getMode() == WIFI_MODE_NULL){ + esp_read_mac(mac, ESP_MAC_WIFI_STA); + } + else{ + esp_wifi_get_mac(WIFI_IF_STA, mac); + } sprintf(macStr, "%02X:%02X:%02X:%02X:%02X:%02X", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); return String(macStr); }