Espressif_Kelly wrote:CHIP_ID can not be used to uniquely indicate of ESP8266EX, because the chip_id of chips for the same batch is same.

mhm... CHIP ID is not UID ? ups ... why ?...

i have think this - that the chip id can not be an uid of ESP8266ex time ago.. i work with CHIP ID but i use UID from Flash too for signing - ( MAC too )because there is only "Chip_id" command and not a "Chip_uid" command in the api....

But thank you that yóu clear this now -Chip Id is no UID...

Espressif_Kelly wrote:You can use MAC address as the identifier. MAC address is pre-burned in the chip by efuse before delivery and MAC address of each chip are different.

mac is ok for validate boot code - but ..because mac can be change by user too ( in bootloader code / after boot ) so there is no realy UID there after booting - you can use the uid from flash - this is the only UID in the system that is an UID - 64 BIT and can not be change.

The Chip ID is 32 bit. Check the return value of system_get_chip_id() function.Hence, around 4.3 billion different Chip IDs.And with Espressif claiming to have shipped 100 million chips as of January 2018, I believe the chip ID is unique so far.

Documentation

About Us

Espressif Systems is a fabless semiconductor company providing cutting-edge low power WiFi SoCs and wireless solutions for wireless communications and Internet of Things applications. We are the manufacturer of ESP8266EX.