Mac address on giga r1 wifi is an invalid value

the Mac address is being reported as 78:78:78:78:7878.

can this be fixed?

Sorry I do not have one but I will take a SWAG as I found this: β€œTo program or set a MAC address on the Giga E1, you typically need to access the device's firmware or configuration settings through its development environment, such as the Arduino IDE. You can use specific functions or libraries provided for the Giga E1 to set or modify the MAC address as needed.” You need to go through the documentation that came with it and what is referenced.

gone through the documentation & updated firmware, no change on Mac address

How are you determining this. You can also add a statement both before and after that will print the MAC address.

printing Mac address to serial monitor

I assume you made a typo, MAC is dd:dd:dd:dd:dd:dd. The first three pairs identify the manufacturer, the last three are vendor-specific

You need to be connected to a WiFi network for the MAC address to be returned. Are you getting 78s after connecting?

yes

hmm, could you share the call you're using? I use WiFi.getNetwork()->get_mac_address() to return a formatted char*.

you were correct I was printing the Mac address before connecting to wifi. I moved the print to after a successful connection. and got a valid Mac address. I’m not sure why you need to make a wifi connection before getting the Mac address since the Mac address is supposed to be hardcoded to the wifi board. but thank you!

No problem. As I understand it, the wifi chip needs to be powered up before a request for mac can be made. This obviously happens when an interface is created so I guess mbed os decided to make that a dependency. The APIs are exposed, so I guess it would be possible to power up the chip without making a connection and have it return the mac.

1 Like

I would assume that the ESP32 does not have a "built-in" MAC address:

  1. That's for bigger, full-module, networking devices. Not mere chips (yeah, the ESP32 usually comes as "modules", but there is still essentially no place for a unique MAC address to be stored.
  2. Not having a built-in MAC address more easily allows the vendor of "larger" products using the chipset to specify their own MAC address.

(Hmm. The technical reference manual does say that there is one-time-writeable "EFUSE" data that is supposed to include a MAC address. I don't know what, if anything, uses that data.)