Un telefono può configurare un apparecchio spento?
Sì, quando l'apparecchio porta un tag che il telefono sa alimentare: il telefono scrive la configurazione dentro il tag, e il firmware la legge dalla stessa memoria quando l'apparecchio viene acceso la prima volta. Alcuni transponder vanno oltre e fanno funzionare il proprio microcontrollore con il solo campo.
Perché funziona
Un tag prende alimentazione dal lettore, cosa che la pagina dell'alimentazione spiega: il campo del telefono è quello che fa funzionare il chip, quindi l'apparecchio che gli sta intorno può essere staccato, scarico o ancora chiuso nella sua scatola. Niente nello scambio ha bisogno che il prodotto sia vivo.
Quello che rende la cosa utile invece che curiosa è il lato via cavo di un tag dinamico. Il telefono scrive in una memoria che il microcontrollore potrà leggere dopo, così una configurazione passa dall'uno all'altro senza che nessuno dei due sia alimentato nello stesso momento.
Scrivere prima del primo avvio
Lo schema ha tre passi. Il telefono scrive la configurazione come messaggio NDEF, o nella memoria propria del chip, mentre l'apparecchio è spento. L'apparecchio viene acceso per la prima volta, il suo firmware legge il tag su I2C o SPI, e applica quello che trova. Il tag conserva i byte, così un ripristino di fabbrica può tornare a quelli invece che a valori predefiniti che nessuno ha scelto.
Su una linea di produzione è questo a pagare: un apparecchio configurato nel suo imballaggio, senza cavo, senza schermo e senza scatola da aprire, cosa che la pagina della preparazione descrive per i tag in generale.
Funzionare con il campo
Alcuni chip fanno più che conservare byte. La scheda tecnica dell'RF430FRL15xH di TI descrive un transponder ISO/IEC 15693 con un nucleo MSP430, memoria non volatile, un convertitore analogico digitale e un sensore di temperatura, il cui sistema di alimentazione funziona a batteria oppure con il campo a 13,56 MHz.
Un telefono può quindi far partire una misura su un apparecchio senza alcuna batteria, e leggerne il risultato nello stesso tocco. Il limite è l'energia nel campo: funziona quello che la potenza raccolta riesce a muovere, e a deciderlo è la scheda tecnica, non l'ambizione.
Cosa il firmware deve prevedere
Convalidare quello che legge. La configurazione è stata scritta da qualcosa che il firmware non ha mai visto, magari da un telefono che non è il tuo, quindi è un ingresso: verifica la struttura, verifica gli intervalli, e tieni una configurazione di ripiego per il giorno in cui il tag conterrà sciocchezze.
Proteggere quello che conta. Chiunque abbia un telefono può scrivere un tag non protetto, quindi una configurazione che non deve cambiare ha bisogno della protezione propria del chip, che la pagina delle opzioni di configurazione elenca e che la pagina dell'autenticazione copre dal lato del codice.
E scrivere in un ordine che sopravviva a un'interruzione. Un telefono allontanato a metà scrittura lascia il tag nello stato che ha raggiunto, cosa che la pagina delle scritture interrotte risolve scrivendo la lunghezza per ultima.
Domande frequenti
Per questo l'apparecchio ha bisogno di una batteria?
No. Il tag funziona con il campo del telefono, quindi la configurazione si può scrivere con l'apparecchio spento, scarico o ancora nella sua scatola.
Come fa il firmware ad avere la configurazione?
Legge la stessa memoria tramite l'interfaccia via cavo del tag, I2C o SPI, quando l'apparecchio viene alimentato la prima volta.
Un telefono può prendere una misura da un apparecchio non alimentato?
Sui chip costruiti per questo, sì. La scheda tecnica dell'RF430FRL15xH descrive un transponder con un microcontrollore e dei sensori che funzionano con il campo.
Cosa impedisce a un altro di scrivere la configurazione?
Niente, a meno che il chip non la protegga. Usa la protezione che il chip offre, e convalida in ogni caso quello che il firmware legge.