| 
									
										
										
										
											2020-09-30 08:24:29 -04:00
										 |  |  | /* 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; | 
					
						
							| 
									
										
										
										
											2017-05-05 01:59:54 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | void setup() { | 
					
						
							|  |  |  | 	Serial.begin(115200); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void loop() { | 
					
						
							| 
									
										
										
										
											2020-09-30 08:24:29 -04:00
										 |  |  | 	for(int i=0; i<17; i=i+8) { | 
					
						
							|  |  |  | 	  chipId |= ((ESP.getEfuseMac() >> (40 - i)) & 0xff) << i; | 
					
						
							|  |  |  | 	} | 
					
						
							| 
									
										
										
										
											2017-05-05 01:59:54 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-09-30 13:57:36 +02:00
										 |  |  | 	Serial.printf("ESP32 Chip model = %s Rev %d\n", ESP.getChipModel(), ESP.getChipRevision()); | 
					
						
							|  |  |  | 	Serial.printf("This chip has %d cores\n", ESP.getChipCores()); | 
					
						
							| 
									
										
										
										
											2020-09-30 08:24:29 -04:00
										 |  |  |   Serial.print("Chip ID: "); Serial.println(chipId); | 
					
						
							|  |  |  |    | 
					
						
							| 
									
										
										
										
											2017-05-05 01:59:54 -05:00
										 |  |  | 	delay(3000); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | } |