Die 4 Speicherbänke
Jeder EPC-Gen2-Tag hat genau 4 Speicherbänke, die jeweils einem bestimmten Zweck dienen. Das Verständnis dieser Struktur ist unerlässlich für das Codieren, Lesen und Sichern Ihrer Tags.
Bank 00 (Reserved): Enthält das 32-Bit Kill-Passwort und das 32-Bit Access-Passwort. Standardwerte sind 0x00000000. Das Kill-Passwort deaktiviert den Tag dauerhaft, wenn es gesendet wird – irreversibel. Das Access-Passwort sperrt Speicherbänke, um unbefugtes Schreiben zu verhindern.
Bank 01 (EPC): Enthält StoredCRC (16 Bit, automatisch berechnet), StoredPC/Protocol Control (16 Bit, gibt die EPC-Länge und Tag-Fähigkeiten an) und den EPC-Wert selbst – typischerweise 96 Bit (12 Bytes) für SGTIN-96. Einige Tags unterstützen 128-Bit oder sogar 496-Bit EPCs.
Bank 10 (TID): Werksprogrammierter Tag-Identifier. Enthält den Chip-Herstellercode, die Modellnummer und eine eindeutige Seriennummer. Diese Bank ist schreibgeschützt und kann niemals geändert werden – was sie für Fälschungsschutz und Tag-Authentifizierung unschätzbar macht.
Bank 11 (User): Optionaler zusätzlicher Speicher. Die Größe variiert je nach Chip: NXP UCODE 9 hat 0 Bit (kein Benutzerspeicher), Quanray QStar-7U hat 512 Bit (64 Bytes). Verwenden Sie ihn für Chargennummern, Inspektionsdaten, Temperaturschwellenwerte oder Wartungsprotokolle. Überprüfen Sie immer die verfügbare Kapazität vor dem Schreiben.
SGTIN-96-Codierung Schritt für Schritt
SGTIN-96 ist das am häufigsten verwendete EPC-Schema. Es codiert eine GTIN-14 (Ihr Produktbarcode) plus eine eindeutige Seriennummer in genau 96 Bit (12 Bytes). Dies ermöglicht bis zu 274 Milliarden eindeutige Seriennummern pro Produkttyp.
Die 96-Bit-Struktur: Header (8 Bit, immer 0x30 für SGTIN-96) → Filter (3 Bit: 0=Alle, 1=POS, 2=Volle Kiste, 3=Reserviert, 4=Innenverpackung, 5=Reserviert, 6=Ladungsträger, 7=Komponente) → Partition (3 Bit: definiert, wie Bits zwischen Unternehmenspräfix und Artikelnreferenz aufgeteilt werden) → Unternehmenspräfix (20–40 Bit) → Artikelnreferenz (4–24 Bit) → Seriennummer (38 Bit).
Der Partition-Wert (0–6) bestimmt die Länge des Unternehmenspräfix: P=0 → 40-Bit-Präfix (12 Ziffern), P=1 → 37-Bit (11 Ziffern), P=2 → 34-Bit (10 Ziffern), P=3 → 30-Bit (9 Ziffern), P=4 → 27-Bit (8 Ziffern), P=5 → 24-Bit (7 Ziffern), P=6 → 20-Bit (6 Ziffern). Die Länge Ihres GS1-Unternehmenspräfix bestimmt, welcher Partition-Wert verwendet wird.
Verwenden Sie das Nextwaves TDS RFID Converter-Tool unter /tools/tds-rfid-converter, um SGTIN-96-Werte interaktiv zu codieren und zu decodieren. Geben Sie Ihre GTIN-14 + Seriennummer ein und erhalten Sie sofort den hexadezimalen EPC.
┌────────┬──────┬─────┬──────────────┬──────────────┬──────────────┐
│ Header │Filter│Part │Company Prefix│Item Reference│ Serial │
│ 8 bits │3 bits│3bits│ 20-40 bits │ 4-24 bits │ 38 bits │
│ 0x30 │ 0-7 │ 0-6 │ GS1 prefix │ product ref │ unique ID │
└────────┴──────┴─────┴──────────────┴──────────────┴──────────────┘
Partition table (defines prefix/item bit allocation):
P=0: 40-bit prefix (12 digits) P=4: 27-bit prefix (8 digits)
P=1: 37-bit prefix (11 digits) P=5: 24-bit prefix (7 digits)
P=2: 34-bit prefix (10 digits) P=6: 20-bit prefix (6 digits)
P=3: 30-bit prefix (9 digits)
Example: 3034257BF7194E4000001A85
Header=0x30 Filter=1 Part=5 Prefix=0614141
Item=812345 Serial=6789 → GTIN-14: 80614141123458Andere EPC-Schemes
Neben SGTIN-96 definiert GS1 mehrere andere 96-Bit-EPC-Schemes für verschiedene Supply-Chain-Identifikatoren. Jedes hat seinen eigenen Header-Byte.
Lesen und Schreiben des Tag-Speichers
Das Lesen von Tags während der Inventur ist passiv. Der Reader sendet eine Abfrage und die Tags antworten mit ihrem EPC aus Bank 01. Aber Sie können auch explizit jede Speicherbank lesen, indem Sie einen READ-Befehl mit der Banknummer, dem Wortoffset und der Wortanzahl senden.
Das Schreiben auf Tags erfordert mehr Präzision. Das Tag muss isoliert sein (nur ein Tag antwortet), und Schreibvorgänge erfolgen Wort für Wort (16 Bit). Ein vollständiger 96-Bit-EPC-Schreibvorgang erfordert 6 sequentielle Wortschreibungen. Jeder Schreibvorgang dauert 10–20ms, daher dauert die Kodierung eines einzelnen Tags 60–120ms nur für die EPC-Daten.
Häufige Schreibfehler: Tag zu weit von der Antenne entfernt (benötigt stärkeres Signal zum Schreiben als zum Lesen – Tag auf 1m heranführen). Mehrere Tags im Feld (Singulation fehlgeschlagen – Ziel-Tag isolieren). Tag-Speicher gesperrt (Zugriffspasswort erforderlich). Schreibverifizierung fehlgeschlagen (wiederholen, oder Tag möglicherweise defekt – typische Defektrate: 1–3 pro 10.000).
Bewährte Praxis: Immer nach dem Schreiben verifizieren, indem die Daten zurückgelesen und verglichen werden. Ein Schreibbefehl kann erfolgreich sein, aber in seltenen Fällen benachbarte Bits beschädigen. Die Lese-nach-Schreiben-Verifizierung erkennt diese Probleme.
TX → 5A 00 01 02 11 00 0C [EPC_12_BYTES] [CRC16]
Write per 16-bit word: 10-20ms
Full 96-bit EPC = 6 words = 60-120ms total
With access password:
TX → 5A 00 01 02 11 00 10 [PWD_4B] [EPC_12B] [CRC16]Tag-Sicherheit und Passwörter
EPC Gen2 Tags unterstützen zwei 32-Bit-Passwörter für Sicherheit. Das Zugriffspasswort sperrt bestimmte Speicherbänke – sobald gesetzt, erfordert diese Bank das Passwort vor jedem Lese- oder Schreibvorgang. Das Kill-Passwort deaktiviert das Tag dauerhaft, wenn es übertragen wird – ein irreversibler Vorgang, hauptsächlich verwendet für Verbraucher-Privatsphäre im Einzelhandel (nach dem Checkout).
Sicherheitsbest Practices: Niemals das Standardpasswort (0x00000000) in der Produktion verwenden – es bietet keinerlei Sicherheit. Einzigartige Passwörter pro Tag-Charg oder Firmenpräfix als Seed verwenden. Passwörter im Backend-System speichern, niemals auf dem Tag selbst (Passwort-Speicher kann gelesen werden, wenn das Tag entsperrt ist). Passwort-Banken nach der Programmierung sperren. Untraceable-Modus in Betracht ziehen (auf neueren Chips verfügbar), der TID verbirgt und EPC reduziert für Privatsphäre ohne Kill-Befehl.
Der Kill-Befehl ist dauerhaft und irreversibel. Es gibt kein Rückgängig. Sobald ein Tag gekillt wurde, kann es nie wieder auf einen Reader reagieren. Immer Kill-Passwort-Verifizierung in der Software implementieren und Manager-Autorisierung vor der Ausführung von Kill-Befehlen erfordern.
GS1 Digital Link integriert
GS1 Digital Link verbindet physische RFID-Tags mit webzugänglichen digitalen Informationen. Es konvertiert EPC-Daten in einen Standard-URI, der auf Produktinformationen, Authentifizierungsdienste, Rückrufmitteilungen oder Nachhaltigkeitsdaten verweist.
Der Ablauf: Tag-EPC (z.B. 3034257BF7194E4000001A85) → Dekodieren zu GTIN-14 (80614141123458) + Seriennummer (6789) → URI erstellen: https://id.gs1.org/01/80614141123458/21/6789. Dieser URI kann auf Ihre Produktseite, Authentifizierungs-API oder jeden im GS1 Digital Link Resolver-Netzwerk registrierten Dienst verweisen.
Praktische Anwendungen: Ein getaggtes Kleidungsstück im Einzelhandel scannen → URI verweist auf Produktpflegeanweisungen, Größenanleitung und Nachhaltigkeitszertifizierungen. Ein getaggtes Pharma-Produkt scannen → URI verweist auf Authentifizierung (ist dieses Produkt echt?), Ablaufdatum und Rückrufstatus. Ein getaggtes Asset scannen → URI verweist auf Wartungshistorie und Inspektionsplan.
Nextwaves-Tools generieren automatisch Digital Link URIs beim Dekodieren beliebiger SGTIN-96 EPCs. Verwenden Sie den Online-TDS-Konverter oder das MCP decode_sgtin96-Tool für sofortige Digital Link-Generierung.