Skip to content

Commit 75d7c57

Browse files
Add get chip ID example
1 parent ed1eebc commit 75d7c57

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
/* The true ESP32 chip ID is essentially its MAC address.
2+
This sketch provides an alternate chip ID that matches
3+
the output of the ESP.getChipId() function on ESP8266
4+
(i.e. a 32-bit integer matching the last 3 bytes of
5+
the MAC address. This is less unique than the
6+
MAC address chip ID, but is helpful when you need
7+
an identifier that can be no more than a 32-bit integer
8+
(like for switch...case).
9+
10+
created 2020-06-07 by cweinhofer
11+
with help from Cicicok */
12+
13+
uint32_t chipId = 0;
14+
15+
void setup() {
16+
Serial.begin(115200);
17+
}
18+
19+
void loop() {
20+
for(int i=0; i<17; i=i+8) {
21+
chipId |= ((ESP.getEfuseMac() >> (40 - i)) & 0xff) << i;
22+
}
23+
24+
Serial.printf("ESP32 Chip model = %s Rev %d\n", ESP.getChipModel(), ESP.getChipRevision());
25+
Serial.printf("This chip has %d cores\n", ESP.getChipCores());
26+
Serial.print("Chip ID: "); Serial.println(chipId);
27+
28+
delay(3000);
29+
30+
}

0 commit comments

Comments
 (0)