Salta ai contenuti
Questa pagina è stata tradotta automaticamente dall’inglese. Segnala un errore o proponi una correzione.

SDK

Due SDK ufficiali gestiscono tutte le operazioni sui chip TigerTag — lettura del payload NTAG da 144 byte, verifica del formato TigerTag e codifica dei nuovi dati del chip.

  • Repo: TigerTag-SDK-JS (Apache-2.0)
  • Pubblicato su npm come tigertag.
  • Usato internamente da Tiger Studio; utilizzabile in modo indipendente per costruire strumenti personalizzati compatibili con TigerTag.
Finestra del terminale
npm install tigertag
  • Repo: TigerTag-SDK-Python (Apache-2.0)
  • Pubblicato su PyPI come tigertag — per script, strumenti e automazione.
Finestra del terminale
pip install tigertag # core only — stdlib, works fully offline
pip install tigertag[sync] # + requests (database auto-update)
pip install tigertag[verify] # + cryptography (ECDSA signature check)

I due SDK funzionano allo stesso modo. Per leggere, passa l’UID del chip e le sue pagine da 0x04, come le restituisce il tuo SDK NFC. Per scrivere, crea un tag dai suoi campi e scrivi gli 80 byte che restituisce nelle pagine 0x04–0x17. Gli id vengono dalle tabelle di riferimento; l’esempio è una bobina da 1 kg di PLA rosso Rosa3D, da 1,75 mm.

const { TigerTag } = require('tigertag');
// Read
const tag = TigerTag.fromPages(uid, payload);
console.log(tag.pretty());
console.log(String(tag.verify())); // VALID / NOT SIGNED / INVALID
// Write
const spool = TigerTag.create({
uid,
idType: 142, // Filament
idMaterial: 38219, // PLA
idBrand: 19961, // Rosa3D
idAspect1: 104, // Basic
idDiameter: 56, // 1.75 mm
color1R: 255, color1G: 0, color1B: 0, color1A: 255,
measure: 1000, idUnit: 21, // 1000 g
nozzleTempMin: 195, nozzleTempMax: 230,
});
const bytes = spool.toBytes(); // 80 bytes
from tigertag import TigerTag
# Read
tag = TigerTag.from_pages(uid, payload)
print(tag.pretty())
print(tag.verify()) # VALID / NOT SIGNED / INVALID
# Write
spool = TigerTag.create(
uid=uid,
id_type=142, # Filament
id_material=38219, # PLA
id_brand=19961, # Rosa3D
id_aspect_1=104, # Basic
id_diameter=56, # 1.75 mm
color1_r=255, color1_g=0, color1_b=0, color1_a=255,
measure=1000, id_unit=21, # 1000 g
nozzle_temp_min=195, nozzle_temp_max=230,
)
data = spool.to_bytes() # 80 bytes

Per controllare cosa scrive il tuo codice, incolla l’esadecimale di toBytes() o to_bytes() nel playground: decodifica il chip campo per campo, nel browser.

Entrambi gli esempi funzionano così con tigertag 1.2.1 (npm) e 1.4.0 (PyPI). Il resto dell’API (dettagli della firma, sincronizzazione cloud dei TigerTag+, modifica di un chip, la CLI) è nel README di ciascun SDK, che fa fede: JavaScript · Python.

Funzione Descrizione
Parse Decodifica il dump di un chip nell’identità del filamento (marca, materiale, colore…)
Verify Controlla che il payload sia in un formato TigerTag valido
Encode Costruisce un nuovo payload da 144 byte da scrivere su un chip

I dati di riferimento (tabelle ID → nome) provengono dal database condiviso — vedi Identità universale del filamento.