Update GetChipID.ino (#4070)
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
This commit is contained in:
parent
1f6b0b35f8
commit
d56267bd8c
@ -1,17 +1,30 @@
|
|||||||
uint64_t chipid;
|
/* The true ESP32 chip ID is essentially its MAC address.
|
||||||
|
This sketch provides an alternate chip ID that matches
|
||||||
|
the output of the ESP.getChipId() function on ESP8266
|
||||||
|
(i.e. a 32-bit integer matching the last 3 bytes of
|
||||||
|
the MAC address. This is less unique than the
|
||||||
|
MAC address chip ID, but is helpful when you need
|
||||||
|
an identifier that can be no more than a 32-bit integer
|
||||||
|
(like for switch...case).
|
||||||
|
|
||||||
|
created 2020-06-07 by cweinhofer
|
||||||
|
with help from Cicicok */
|
||||||
|
|
||||||
|
uint32_t chipId = 0;
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
Serial.begin(115200);
|
Serial.begin(115200);
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
chipid=ESP.getEfuseMac();//The chip ID is essentially its MAC address(length: 6 bytes).
|
for(int i=0; i<17; i=i+8) {
|
||||||
Serial.printf("ESP32 Chip ID = %04X",(uint16_t)(chipid>>32));//print High 2 bytes
|
chipId |= ((ESP.getEfuseMac() >> (40 - i)) & 0xff) << i;
|
||||||
Serial.printf("%08X\n",(uint32_t)chipid);//print Low 4bytes.
|
}
|
||||||
|
|
||||||
Serial.printf("ESP32 Chip model = %s Rev %d\n", ESP.getChipModel(), ESP.getChipRevision());
|
Serial.printf("ESP32 Chip model = %s Rev %d\n", ESP.getChipModel(), ESP.getChipRevision());
|
||||||
Serial.printf("This chip has %d cores\n", ESP.getChipCores());
|
Serial.printf("This chip has %d cores\n", ESP.getChipCores());
|
||||||
|
Serial.print("Chip ID: "); Serial.println(chipId);
|
||||||
|
|
||||||
delay(3000);
|
delay(3000);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user