arduinoid

Detect counterfeit Arduino chips

https://github.com/baloghr/arduinoid

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (3.7%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Detect counterfeit Arduino chips

Basic Info
  • Host: GitHub
  • Owner: baloghr
  • Language: C++
  • Default Branch: master
  • Homepage:
  • Size: 7.81 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created over 1 year ago · Last pushed 12 months ago
Metadata Files
Readme Citation

README.md

Code in this repository is for reading (more or less documented) ID bytes from the special section of the AVR chip memory. Based on the the 'speters' code and improved to read the whole part of the memory, including the Wafer ID and chip location on the wafer. Seems to be useful for identification of fake ATmega328 chips, where those bytes are usually intact (i.e. unprogrammed, 0xFF).

If you are interested on results of small experiment, here it is: https://senzor.robotika.sk/sensorwiki/index.php/FakeAVRchips

This is the result for the original and genuine Arduino Nano by Arduino S.r.l. (Italy) ``` 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 0x0000: 1E A9 95 FF 0F BA 00 26 FF 06 FF 17 FF FF 57 30
0x0010: 31 30 30 36 FF 0C 19 27 17 05 12 09 13 09 FF FF

Signature: 1E 95 0F (ATmega328P) Lot: 0W0160 Wafer: 12 X: 39 Y: 25 (Decimal) Fuses: Low: 0xFF High: 0xDA Ext: 0xFD Lock: 0xCF ```

Output for the counterfeit chip is similar to this one (note 0xFF on the Wafer ID an X, Y location bytes): ``` 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 0x0000: 1E AD 95 FF 0F FF FF 26 FF FF FF FF FF FF 58 FF
0x0010: EF FF EF FF FF FF FF FF FF FF FF FF FF FF FF FF

Signature: 1E 95 0F (ATmega328P) Lot: ⸮X⸮⸮⸮⸮ Wafer: 255 X: 255 Y: 255 (Decimal) Fuses: Low: 0xFF High: 0xDA Ext: 0xFD Lock: 0xCF ```

For more information, see the paper:

Balogh, R.: Recognition of the Counterfeit Arduino Chips, Proceedings of the K&I'25 conference.

Owner

  • Name: Richard Balogh
  • Login: baloghr
  • Kind: user
  • Location: Bratislava, Slovakia
  • Company: Slovak University of Technology in Bratislava

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: Balogh
    given-names: Richard
    orcid: hhttps://orcid.org/0000-0001-8661-1512
title: "Arduino ID reader"
version: 0.8
identifiers:
  - type: doi
    value: 10.5281/zenodo.1234
date-released: 2024-11-28

GitHub Events

Total
  • Push event: 5
  • Create event: 2
Last Year
  • Push event: 5
  • Create event: 2