Question

 How to get EFM32 device unique number?

Answer

The device unique number (UNIQUEL/H or UNIQUE_0/1) is a 64-bit unique ID which is programmed into the Device information page of the flash during the production of the device.

 

By connecting to an EFM32 device with the Simplicity Commander. The device unique number can then be seen below:

UID.png

 

It is also possible to read out the device unique number electronically by reading this value from the Device Information page. You could see Silabs provide an API to read back this number in em_system.h library as below:

__STATIC_INLINE uint64_t SYSTEM_GetUnique(void)
{
  uint32_t tmp = DEVINFO->UNIQUEL;
  return (uint64_t)((uint64_t)DEVINFO->UNIQUEH << 32) | tmp;
}

 

  • Knowledge Base Articles
  • 32-bit MCUs