Skip to content

Instantly share code, notes, and snippets.

@speters
Last active January 21, 2024 19:59
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save speters/f889faec42b510052a6ab4be437d38ca to your computer and use it in GitHub Desktop.
Save speters/f889faec42b510052a6ab4be437d38ca to your computer and use it in GitHub Desktop.
Arduino atmega328p unique id/serial number
#include <avr/boot.h>
void print_val(char *msg, uint8_t val)
{
Serial.print(msg);
Serial.println(val, HEX);
}
void setup(void)
{
Serial.begin(9600);
while (!Serial) ;
#define SIGRD 5
#if defined(SIGRD) || defined(RSIG)
Serial.print("Signature : ");
for (uint8_t i = 0; i < 5; i += 2) {
Serial.print(" 0x");
Serial.print(boot_signature_byte_get(i), HEX);
}
Serial.println();
Serial.print("Serial Number : ");
for (uint8_t i = 14; i < 24; i += 1) {
Serial.print(" 0x");
Serial.print(boot_signature_byte_get(i), HEX);
}
Serial.println();
#endif
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment