|
1 | 1 | # ArduinoUniqueID
|
2 | 2 |
|
3 |
| -This Library gets the Unique Serial ID from the AVR Microcontroller and ESP Microcontroller. |
| 3 | +This Library gets the Unique ID / Manufacture Serial Number from the Atmel AVR, SAM, SAMD, and ESP Microcontroller. |
4 | 4 |
|
5 | 5 | # Atmel AVR Microcontroller
|
6 | 6 |
|
@@ -33,13 +33,34 @@ Apparently, the chip Atmega328p have a hidden serial number with 9 bytes, and ot
|
33 | 33 | * Attiny85 - 9 bytes
|
34 | 34 |
|
35 | 35 | # Atmel SAM ARM Microcontroller
|
36 |
| -Atmel SAM3X8E is used in Arduino Due. The Unique Identifier is located in the first 128 bits of the Flash memory mapping. So, at the address 0x400000-0x400003. |
37 |
| -"Each device integrates its own 128-bit unique identifier. These bits are factory configured and cannot be changed by the user. The ERASE pin has no effect on the unique identifier." (http://ww1.microchip.com/downloads/en/devicedoc/atmel-11057-32-bit-cortex-m3-microcontroller-sam3x-sam3a_datasheet.pdf) |
| 36 | + |
| 37 | +Atmel SAM3X8E is used in Arduino Due. |
| 38 | + |
| 39 | +The Unique Identifier is located in the first 128 bits of the Flash memory mapping. So, at the address 0x400000-0x400003. |
| 40 | + |
| 41 | +"Each device integrates its own 128-bit unique identifier. These bits are factory configured and cannot be changed by the user. The ERASE pin has no effect on the unique identifier." [Datasheet Section 7.2.3.7](http://ww1.microchip.com/downloads/en/devicedoc/atmel-11057-32-bit-cortex-m3-microcontroller-sam3x-sam3a_datasheet.pdf) |
38 | 42 |
|
39 | 43 | ## Tested Microcontroller
|
40 | 44 |
|
41 | 45 | * Atmel SAM3X8E ARM Cortex-M3 - 16 bytes
|
42 | 46 |
|
| 47 | +# Atmel SAMD ARM Microcontroller |
| 48 | + |
| 49 | +Atmel SAMD21 is used in Arduino Zero / Arduino M0. |
| 50 | + |
| 51 | +Each device has a unique 128-bit serial number which is a concatenation of four 32-bit words contained at the following addresses: |
| 52 | + |
| 53 | +* Word 0: 0x0080A00C |
| 54 | +* Word 1: 0x0080A040 |
| 55 | +* Word 2: 0x0080A044 |
| 56 | +* Word 3: 0x0080A048 |
| 57 | + |
| 58 | +The uniqueness of the serial number is guaranteed only when using all 128 bits. [Datasheet Section 9.3.3](https://cdn.sparkfun.com/datasheets/Dev/Arduino/Boards/Atmel-42181-SAM-D21_Datasheet.pdf) |
| 59 | + |
| 60 | +## Tested Microcontroller |
| 61 | + |
| 62 | +* Atmel SAMD21 ARM Cortex-M0 - 16 bytes |
| 63 | + |
43 | 64 | # Espressif ESP Microcontroller
|
44 | 65 |
|
45 | 66 | ESP microcontroller has basically two versions, ESP8266 and ESP32, each one has a specific function to request the chip id. <br/>
|
@@ -81,7 +102,7 @@ This library only supports AVR Microcontroller and ESP Microcontroller.
|
81 | 102 | ## Installation
|
82 | 103 |
|
83 | 104 | * Install the library by [Using the Library Manager](https://www.arduino.cc/en/Guide/Libraries#toc3)
|
84 |
| -* **OR** by [Importing the .zip library](https://www.arduino.cc/en/Guide/Libraries#toc4) using either the [master](https://github.com/ricaun/ArduinoUniqueID/archive/1.0.5.zip) or one of the [releases](https://github.com/ricaun/ArduinoUniqueID/releases) ZIP files. |
| 105 | +* **OR** by [Importing the .zip library](https://www.arduino.cc/en/Guide/Libraries#toc4) using either the [master](https://github.com/ricaun/ArduinoUniqueID/archive/1.0.7.zip) or one of the [releases](https://github.com/ricaun/ArduinoUniqueID/releases) ZIP files. |
85 | 106 |
|
86 | 107 | ## Examples
|
87 | 108 |
|
|
0 commit comments