STMicroelectronics M24SR04-Y Support of ndef data structure Datasheet

M24SR04-Y
M24SR04-G
Dynamic NFC/RFID tag IC with 4-Kbit EEPROM,
NFC Forum Type 4 Tag and I²C interface
Datasheet - production data
• Read up to 246 bytes in a single command
• Write up to 246 bytes in a single command
• 7 bytes unique identifier (UID)
TSSOP8
(DW)
SO8
(MN)
UFDFPN8
(MC)
• 128 bits passwords protection
Package
• 8-lead small-outline package (SO8)
ECOPACK2®
• TSSOP8 ECOPACK2®
Wafer
WFDFPN8
(MF)
Features
2
I C interface
• Two-wire I2C serial interface supports
1 MHz protocol
• Single supply voltage:
– 2.7 V to 5.5 V for grade Y
– 2.4 V to 5.5 V for grade G(1)
Contactless interface
• NFC Forum Type 4 Tag
• ISO/IEC 14443 Type A
• 106 Kbps data rate
• Internal tuning capacitance: 25 pF
Memory
• 512-byte (4-kbit) EEPROM
• Support of NDEF data structure
• Data retention: 200 years
• Write cycle endurance:
– 1 million Write cycles at 25 °C
– 600k Write cycles at 85 °C
• UFDFPN8 ECOPACK2®
• WFDFDN8 ECOPACK2®(2)(3)
Digital pad
• GPO: configurable General Purpose Output
• RF disable: activation/deactivation of RF
commands
Temperature range
• From - 40 °C up to 85 °C
Description
M24SR04 belongs to the ST25 family which
includes all STMicroelectronics NFC/RFID tag and
reader products.
The M24SR04 devices is a dynamic NFC/RFID
tag IC with a dual interface. It embeds an
EEPROM memory. It can be operated from an I2C
interface or by a 13.56 MHz RFID reader or an
NFC phone.
The I2C interface uses a two-wire serial interface,
consisting of a bidirectional data line and a clock
line. It behaves as a slave in the I2C protocol.
The RF protocol is compatible with ISO/IEC
14443 Type A and NFC Forum Type 4 Tag.
2. Preliminary data for automotive grade (under
qualification).
1. Limited temperature range -25 to 85 °C
February 2017
This is information on a product in full production.
3. Package for automotive grade.
DocID024754 Rev 15
1/90
www.st.com
Contents
M24SR04-Y M24SR04-G
Contents
1
Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1
2
Functional modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.1
I2C mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.2
Tag mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.3
Dual interface mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Signal descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.1
Serial clock (SCL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2
Serial data (SDA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3
Antenna coil (AC0, AC1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.4
Ground (VSS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5
Supply voltage (VCC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5.1
3
2.5.3
Device reset in I²C mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.5.4
Power-down conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.6
RF disable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.7
General purpose output (GPO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.7.1
Session Open configuration (GPO field = 0xX1 or 0x1X) . . . . . . . . . . . 14
2.7.2
WIP Writing in Progress configuration (GPO field = 0xX2 or 0x2X) . . . 15
2.7.3
I2C answer ready configuration (GPO field = 0xX3) . . . . . . . . . . . . . . . 16
2.7.4
MIP NDEF Message writing in Progress configuration
(GPO field = 0x3X) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.7.5
INT Interrupt configuration (GPO field = 0xX4 or 0x4X) . . . . . . . . . . . . 18
2.7.6
State Control configuration (GPO field = 0xX5 or 0x5X) . . . . . . . . . . . . 19
2.7.7
RF busy configuration (GPO field = 0x6X) . . . . . . . . . . . . . . . . . . . . . . . 20
M24SR04 memory management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1
3.2
2/90
2.5.2
Operating supply voltage VCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Power-up conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Memory structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1.1
File identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1.2
CC file layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1.3
NDEF file layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.1.4
System file layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Read and write access rights to the memory . . . . . . . . . . . . . . . . . . . . . . 25
DocID024754 Rev 15
M24SR04-Y M24SR04-G
Contents
3.2.1
State of the Read and Write access rights . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.2
Changing the read access right to NDEF files . . . . . . . . . . . . . . . . . . . . 26
3.2.3
Changing the write access right to NDEF files . . . . . . . . . . . . . . . . . . . 27
3.3
Access right life time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4
NDEF file passwords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.5
I2C password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.5.1
4
5
I²C password and I²C protect field of the System file . . . . . . . . . . . . . . . 28
Communication mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.1
Master and slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.2
M24SR04 session mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.2.1
RF token . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.2.2
I2C token . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
I²C and RF command sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.1
Structure of the command sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.2
I-Block format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.2.1
C-APDU: payload format of a command . . . . . . . . . . . . . . . . . . . . . . . . 32
5.2.2
R-APDU: payload format of a response . . . . . . . . . . . . . . . . . . . . . . . . 33
5.3
R-Block format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.4
S-Block format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.5
CRC of the I2C and RF frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.6
NFC Forum Type 4 Tag protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.7
5.6.1
Commands set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.6.2
Status and error codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.6.3
NDEF Tag Application Select command . . . . . . . . . . . . . . . . . . . . . . . . 38
5.6.4
Capability Container Select command . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.6.5
NDEF Select command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.6.6
System File Select command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.6.7
ReadBinary command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.6.8
UpdateBinary command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
ISO/IEC 7816-4 commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.7.1
Verify command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.7.2
Change Reference Data command . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.7.3
Enable Verification Requirement command . . . . . . . . . . . . . . . . . . . . . . 45
5.7.4
Disable Verification Requirement command . . . . . . . . . . . . . . . . . . . . . 46
DocID024754 Rev 15
3/90
5
Contents
M24SR04-Y M24SR04-G
5.8
5.9
5.10
6
7
ST Proprietary command set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.8.1
ExtendedReadBinary command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.8.2
EnablePermanentState command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.8.3
DisablePermanentState command . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.8.4
UpdateFileType command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.8.5
SendInterrupt command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.8.6
StateControl command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Specific RF command set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.9.1
Anticollision command set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.9.2
RATS command and ATS response . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.9.3
PPS command & response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Specific I²C command set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.10.1
GetI2Csession command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.10.2
KillRFsession command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
RF device operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.1
Anticollision and Device Activation command set for the RF interface . . 56
6.2
Open an RFsession . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.3
Close an RFsession . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.4
Applicative command set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
I2C device operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
7.1
I2C communication protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
7.2
Start condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
7.3
Stop condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
7.4
I²C token release sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
7.5
I²C timeout on clock period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
7.6
Acknowledge bit (ACK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
7.7
Data input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
7.8
I²C device address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
7.9
I²C frame format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
7.9.1
4/90
Example of I²C frame commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
7.10
Open an I²C session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7.11
Close the I²C session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
DocID024754 Rev 15
M24SR04-Y M24SR04-G
8
Contents
Functional procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
8.1
Selection of an NDEF message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
8.2
Reading of an NDEF message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
8.3
Reading a locked NDEF file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
8.4
Locking an NDEF file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
8.5
Unlocking an NDEF file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
8.6
Reaching the read-only state for an NDEF file . . . . . . . . . . . . . . . . . . . . . 64
8.7
Changing an NDEF password procedure . . . . . . . . . . . . . . . . . . . . . . . . . 64
8.8
Changing a File type Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
8.9
Updating a NDEF file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
9
UID: Unique identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
10
Maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
11
I2C DC and AC parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
11.1
I2C timing measurement condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
12
GPO parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
13
Write cycle definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
14
RF electrical parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
15
Package information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
15.1
SO8N package information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
15.2
TSSOP8 package information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
15.3
UFDFPN8 package information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
15.4
WFDFPN8 package information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
16
Part numbering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
17
Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
DocID024754 Rev 15
5/90
5
List of tables
M24SR04-Y M24SR04-G
List of tables
Table 1.
Table 2.
Table 3.
Table 4.
Table 5.
Table 6.
Table 7.
Table 8.
Table 9.
Table 10.
Table 11.
Table 12.
Table 13.
Table 14.
Table 15.
Table 16.
Table 17.
Table 18.
Table 19.
Table 20.
Table 21.
Table 22.
Table 23.
Table 24.
Table 25.
Table 26.
Table 27.
Table 28.
Table 29.
Table 30.
Table 31.
Table 32.
Table 33.
Table 34.
Table 35.
Table 36.
Table 37.
Table 38.
Table 39.
Table 40.
Table 41.
Table 42.
Table 43.
Table 44.
Table 45.
Table 46.
Table 47.
Table 48.
6/90
Signal names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Functional mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
File identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
CC file layout for 1 NDEF file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
NDEF file layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Field list. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Details about I2C watchdog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Details about the GPO field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Details about the RF Session field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Details about the ST reserved field. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Details about the RF enable field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Read access right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Write access right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
RF and I²C command sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
I-Block format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
PCB field of the I-Block format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
C-APDU format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
R-APDU format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
R-Block format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
R-Block detailed format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
S-Block format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
S-Block detailed format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Command set overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Status code of the M24SR04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Error code of the M24SR04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
C-APDU of the NDEF Tag Application Select command . . . . . . . . . . . . . . . . . . . . . . . . . . 38
R-APDU of the NDEF Tag Application Select command . . . . . . . . . . . . . . . . . . . . . . . . . . 38
C-APDU of the Capability Container Select command . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
R-APDU of the Capability Container Select command . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
C-APDU of the NDEF Select command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
R-APDU of the NDEF Select command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
C-APDU of the System File Select command. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
R-APDU of the System File Select command. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
C-APDU of the ReadBinary command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
R-APDU of the ReadBinary command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
C-APDU of the UpdateBinary command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
R-APDU of the UpdateBinary command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Verify command format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
R-APDU of the Verify command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Change reference data command format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
R-APDU of the Change Reference Data command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Enable Verification Requirement command format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
R-APDU of the Enable Verification Requirement command. . . . . . . . . . . . . . . . . . . . . . . . 46
Disable Verification Requirement command format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
R-APDU of the Disable Verification Requirement command . . . . . . . . . . . . . . . . . . . . . . . 47
C-APDU of the ExtendedReadBinary command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
R-APDU of the ExtendedReadBinary command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
EnablePermanentState command format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
DocID024754 Rev 15
M24SR04-Y M24SR04-G
Table 49.
Table 50.
Table 51.
Table 52.
Table 53.
Table 54.
Table 55.
Table 56.
Table 57.
Table 58.
Table 59.
Table 60.
Table 61.
Table 62.
Table 63.
Table 64.
Table 65.
Table 66.
Table 67.
Table 68.
Table 69.
Table 70.
Table 71.
Table 72.
Table 73.
Table 74.
Table 75.
Table 76.
Table 77.
Table 78.
Table 79.
Table 80.
Table 81.
Table 82.
Table 83.
Table 84.
Table 85.
Table 86.
Table 87.
Table 88.
Table 89.
Table 90.
List of tables
R-APDU table of the EnablePermanentState command . . . . . . . . . . . . . . . . . . . . . . . . . . 48
DisablePermanentState command format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
R-APDU of the DisablePermanentState command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
UpdateFileType command format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
R-APDU of the UpdateFileType command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
SendInterrupt command format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
R-APDU of the SendInterrupt command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
StateControl command format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
R-APDU of the StateControl command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Commands issues by the RF host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
RATS command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Conversion from FDSI to FSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
ATS response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
PPS command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Ascending and descending data rate coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
PPS response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Specific I²C commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
GetI2Csession command format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
KillRFsession command format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
I2C device address format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
I2C frame format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
I2C host to M24SR04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
M24SR04 to I2C host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
UID format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
I2C operating conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
AC test measurement conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Input parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
I2C DC characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
I2C AC characteristics (400 kHz) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
I2C AC characteristics (1 MHz) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Device select code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
GPO timings measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Write cycle definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Default operating conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
RF characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
SO8N - 8-lead plastic small outline, 150 mils body width,
package data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
TSSOP8 - 8-lead thin shrink small outline, 169 mils width, package data . . . . . . . . . . . . . 81
UFDFPN8 - 8- lead, 2 x 3 mm, 0.5 mm pitch ultra thin profile fine pitch
dual flat package mechanical data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
WFDFPN8 8-lead thin fine pitch dual flat package no lead
mechanical data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Ordering information scheme for packaged devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
DocID024754 Rev 15
7/90
7
List of figures
M24SR04-Y M24SR04-G
List of figures
Figure 1.
Figure 2.
Figure 3.
Figure 4.
Figure 5.
Figure 6.
Figure 7.
Figure 8.
Figure 9.
Figure 10.
Figure 11.
Figure 12.
Figure 13.
Figure 14.
Figure 15.
Figure 16.
Figure 17.
Figure 18.
Figure 19.
Figure 20.
Figure 21.
Figure 22.
Figure 23.
Figure 24.
8/90
M24SR04 block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
8-pin package connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
GPO configured as Session Open (GPO field = 0xX1 or 0x1X) . . . . . . . . . . . . . . . . . . . . . 14
GPO configured as WIP (GPO field = 0xX2 or 0x2X). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
GPO configured as I2C answer ready (GPO field = 0xX3) . . . . . . . . . . . . . . . . . . . . . . . . . 16
GPO configured as MIP (GPO field = 0x3X). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
GPO configured as INT (GPO field = 0xX4 or 0x4X) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
GPO configured as State Control (GPO field = 0xX5 or 0x5X). . . . . . . . . . . . . . . . . . . . . . 19
GPO configured as RF busy (GPO field = 0x6X) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Changing the read access right to an NDEF file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Changing the write access right to an NDEF file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Command and response exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
I²C token release sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
NDEF tag Application Select command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
AC test measurement I/O waveform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
I2C AC waveforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Maximum Rbus value with fC = 400 kHz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Maximum Rbus value with fC = 1 MHz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
I2C bus protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
SO8N - 8-lead plastic small outline, 150 mils body width, package outline . . . . . . . . . . . . 79
SO8N - 8-lead plastic small outline, 150 mils bosy width,
package recommended footprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
TSSOP8 - 8-lead thin shrink small outline, 3 x 4 mm, 0.5 mm pitch
package outline. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
UFDFPN8 - 8-lead, 2 x 3 mm, 0.5 mm pitch ultra thin profile fine pitch
dual flat package outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
WFDFPN8 (MLP8) 8-lead, 2 x 3 mm, 0.5 mm pitch very thin fine pitch
dual flat package outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
DocID024754 Rev 15
M24SR04-Y M24SR04-G
1
Functional description
Functional description
The M24SR04 device is a dynamic NFC/RFID tag that can be accessed either from the I2C
or the RF interface. The RF and I2C host can read or write to the same memory, that is why
only one host can communicate at a time with the M24SR04. The management of the
interface selection is controlled by the M24SR04 device itself.
The RF interface is based on the ISO/IEC 14443 Type A standard. The M24SR04 is
compatible with the NFC Forum Type 4 Tag specifications and supports all corresponding
commands.
The I2C interface uses a two-wire serial interface consisting of a bidirectional data line and a
clock line. The devices carry a built-in 4-bit device type identifier code in accordance with
the I²C bus definition.
The device behaves as a slave in the I2C protocol.
Figure 1 displays the block diagram of the M24SR04 device.
Figure 1. M24SR04 block diagram
6XSSO\YROWDJH
IRU,&LQWHUIDFH
5)LQWHUIDFH
EDVHGRQ
,62,(&
7\SH$
VWDQGDUG
9&&
$&
$QDORJ)URQWHQG
EDVHGRQ
,62,(&
7\SH$VWDQGDUG
$&
,QWHUQDOWXQLQJ
FDSDFLWDQFH
5)
GLVDEOH
1)&)RUXP
7\SH7DJ
SURWRFRO
6&/
6'$
h/ΘƐLJƐƚĞŵ
ĂƌĞĂ
hƐĞƌŵĞŵŽƌLJ
'LJLWDOXQLW
*32
,&LQWHUIDFH
9±9
3RZHU
PDQDJHPHQW
XQLW
1)&B,&
LQWHUIDFH
*1'
069
DocID024754 Rev 15
9/90
20
Functional description
M24SR04-Y M24SR04-G
Table 1. Signal names
Signal name
Function
Direction
SDA
Serial data
I/O
SCL
Serial clock
Input
AC0, AC1
Antenna coils
-
VCC
Supply voltage
-
VSS
Ground
GPO
-
Interrupt output
RF disable
(1)
Open drain output
Disable the RF communication
(2)
Input
1. An external pull-up > 4.7 kΩ is required.
2. An external pull-down is required when the voltage on Vcc is above its POR level.
Figure 2. 8-pin package connections
5)GLVDEOH
9&&
$&
*32
$&
6&/
966
6'$
069
1. See Package mechanical data section for package dimensions, and how to identify pin 1.
1.1
Functional modes
The M24SR04 has two functional modes available. The difference between the modes lies
in the power supply source (see Table 2).
Table 2. Functional mode
Mode
1.1.1
Supply source
Comments
I2C mode
Vcc
The I2C interface is available
Tag mode
RF field only
The 2C interface is disconnected
Dual interface mode
RF field or Vcc
Both I2C and RF interfaces are available
I2C mode
M24SR04 is powered by VCC. The I2C interface is connected to the M24SR04. The I2C host
can communicate with the M24SR04 device.
1.1.2
Tag mode
The M24SR04 is supplied by the RF field and can communicate with an RF host (RFID
reader or an NFC phone). The User memory can only be accessed by the RF commands.
10/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
1.1.3
Functional description
Dual interface mode
Both interfaces, RF and I2C, are connected to the M24SR04 and both RF or I2C host can
communicate with the M24SR04 device. The power supply and the access management
are carried out by the M24SR04 itself. For further details, please refer to the token
mechanism chapter.
DocID024754 Rev 15
11/90
20
Signal descriptions
M24SR04-Y M24SR04-G
2
Signal descriptions
2.1
Serial clock (SCL)
This input signal is used to strobe all data in and out of the device. In applications where this
signal is used by slave devices to synchronize the bus to a slower clock, the bus master
must have an open drain output, and a pull-up resistor must be connected from Serial clock
(SCL) to VCC. (Figure 17 indicates how the value of the pull-up resistor can be calculated).
In most applications, though, this method of synchronization is not employed, and so the
pull-up resistor is not necessary, provided that the bus master has a push-pull (rather than
open drain) output.
2.2
Serial data (SDA)
This bidirectional signal is used to transfer data in or out of the device. It is an open drain
output that may be wire-OR'ed with other open drain or open collector signals on the bus. A
pull-up resistor must be connected from Serial data (SDA) to VCC. (Figure 17 indicates how
the value of the pull-up resistor can be calculated).
2.3
Antenna coil (AC0, AC1)
These inputs are used to connect the device to an external coil exclusively. It is advised not
to connect any other DC or AC path to AC0 or AC1.
When correctly tuned, the coil is used to access the device using NFC Forum Type 4
commands.
2.4
Ground (VSS)
VSS, when connected, is the reference for the VCC supply voltage for all pads, even AC0
and AC1.
2.5
Supply voltage (VCC)
This pin can be connected to an external DC supply voltage.
Note:
An internal voltage regulator allows the external voltage applied on VCC to supply the
M24SR04.
2.5.1
Operating supply voltage VCC
Prior to selecting the M24SR04 and issuing instructions to it, a valid and stable VCC voltage
within the specified [VCC(min), VCC(max)] range must be applied. To maintain a stable DC
supply voltage, it is recommended to decouple the VCC line with suitable capacitors (usually
of the order of 10 nF and 100 pF) close to the VCC/VSS package pins.
This voltage must remain stable and valid until the end of the transmission of the instruction
and, for a writing instruction (UpdateBinary, ChangeReferenceData,
12/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
Signal descriptions
EnableVerificationRequirement, DisableVerificationRequirement, EnablePermanentState,
DisablePermanentState, until the completion of the internal I²C write cycle (tW).
2.5.2
Power-up conditions
When the power supply is turned on, VCC rises from VSS to VCC. The VCC rise time must not
vary faster than 1V/µs.
2.5.3
Device reset in I²C mode
In order to prevent inadvertent write operations during power-up, a power-on reset (POR)
circuit is included. At power-up (continuous rise of VCC), the M24SR04 does not respond to
any I²C instruction until VCC has reached the power-on reset threshold voltage (this
threshold is lower than the minimum VCC operating voltage defined). When VCC passes
over the POR threshold, the device is reset and enters the Standby power mode. However,
the device must not be accessed until VCC has reached a valid and stable VCC voltage
within the specified [VCC(min), VCC(max)] range.
In a similar way, during power-down (continuous decrease in VCC), as soon as VCC drops
below the power-on reset threshold voltage, the M24SR04 stops responding to any
instruction sent to it.
2.5.4
Power-down conditions
During power-down (continuous decay of VCC), the M24SR04 must be in Standby power
mode (mode reached after decoding a Stop condition, assuming that there is no internal
operation in progress).
2.6
RF disable
This input signal is used to disable the RF communication. When the voltage on the VCC pin
is below the POR level or not connected, an internal pull-down resistor is connected on this
pad. Thus, the RF disable pad is maintained to the low level and the RF analog front end is
activated. When the voltage on the VCC pin is higher than the POR level, the I²C host shall
set this pin to enable or disable the RF communication. In Dual interface mode, RF disable
must not be left floating.
2.7
General purpose output (GPO)
The GPO pad is an open drain pad and a external pull-up resistor shall be connected to it.
This pad is a configurable output signal. On delivery, GPO is configured as Session opened.
Its behavior is consistent with the I2C or RF session activated and with the mode chosen by
the user. The GPO pad is enable when an RF or an I2C session is open. When neither an
RF nor an I2C session is open, the GPO is high impedance.
DocID024754 Rev 15
13/90
20
Signal descriptions
M24SR04-Y M24SR04-G
The user can select one of these configurations(1):
2.7.1
•
SessionOpen: an RF or I2C session is ongoing.
•
MIP (NDEF Message updating In Progress): the RF host is writing an NDEF length
different from 0x0000. This mode can be used to detect when the RF host changes the
NDEF message as defined by the NFC Forum.
•
WIP (Writing In Progress): the M24SR04 is executing a writing operation.
•
INT (interrupt): the I2C or RF host can force the M24SR04 to send a negative pulse on
the GPO pin.
•
I2C ready response: an I2C response is ready to be read by the I²C host.
•
State mode: the I2C or RF host can control the state of the GPO pad during the RF
session.
•
RF busy: an RF host is communicating with the M24SR04.
Session Open configuration (GPO field = 0xX1 or 0x1X)
When the GPO is configured as "Session Open", it goes to the Low state when an RF or I2C
session is ongoing (see Figure 3).
An RF session is taken when M24SR04 receives a valid Select Application. The session is
released after M24SR04 has received a valid Deselect command, if M24SR04 has received
a Kill RF session command in I2C or when the RF field became OFF.
An I2C session is taken when M24SR04 receives a valid Get session command or a valid
Kill RF session command. The session is released after M24SR04 has received I2C token
release sequence or after a Power Off.
GPO is driven low after a delay (1) or (3) when the session is open.
GPO is released after a delay (2) or (4) when the session is released.
Z&^ĞƐƐŝŽŶ
'WKĂƐ^ĞƐƐŝŽŶKƉĞŶ
;ϭͿ
ĞƐĞůĞĐƚ
<ŝůůƐĞƐƐŝŽŶŽƌ
'ĞƚƐĞƐƐŝŽŶ
ĞƐĞůĞĐƚ
^ĞƐƐŝŽŶ
ŶƚŝĐŽůůŝƐŝŽŶΘ
E&ƐĞůĞĐƚ
Figure 3. GPO configured as Session Open (GPO field = 0xX1 or 0x1X)
Z&
^ĞƐƐŝŽŶ
/Ϯ^ĞƐƐŝŽŶ
;ϮͿ
;ϯͿ
;ϰͿ
D^ϯϬϳϴϰsϮ
1. CmdEOFtoGPlow (RF command End of frame to GPORF Session pad low)
2. CmdEOFtoGPHZ (RF command End of frame to GPORF Session pad HZ)
3. CmdSTPtoGPlow (I2C command stop to GPO low)
4. AnswerlbLBtoGPHZ (I2C answer last bit of last byte to GPO HZ)
1. See Table 81 for more details.
14/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
2.7.2
Signal descriptions
WIP Writing in Progress configuration (GPO field = 0xX2 or 0x2X)
When the GPO is configured as "WIP", it goes to the Low state during an I2C or RF writing
operation.
During an RF or I2C session, when M24SR04 updates a file, GPO is driven low after a delay
(1) or (3) following the beginning of the correspondent UpdateBinary command execution.
GPO will remain low during the writing time (2) or (4), before being released.
Figure 4. GPO configured as WIP (GPO field = 0xX2 or 0x2X)
;ϭͿ
Z&Žƌ/Ϯ
Žƌ
;ϯͿ
ĐŚĂŶŶĞů
hƉĚĂƚĞ
ĐŽŵŵĂŶĚ
ŶĚŽĨǁƌŝƚŝŶŐ
ŽƉĞƌĂƚŝŽŶ
ŶLJŽƚŚĞƌ
ĐŽŵŵĂŶĚ
'WKĂƐt/W
;ϮͿŽƌ;ϰͿ
D^ϯϬϳϴϲsϯ
1. CmdSTPtoGPlow (I2C Command Stop to GPO low)
2. Writing time duration
3. CmdEOFtoGPlow (RF Command End of frame to GPO low)
4. Writing time duration
DocID024754 Rev 15
15/90
20
Signal descriptions
2.7.3
M24SR04-Y M24SR04-G
I2C answer ready configuration (GPO field = 0xX3)
When the GPO is configured as I2C answer ready, it goes to the Low state when the
M24SR04 has finished to treat the I2C command and is ready to send the I2C response.
During an I2C session, after receiving a valid I2C command, GPO pin is driven low after a
delay when M24SR04 is ready to deliver a response on the I2C bus.
GPO is released when M24SR04 receives a new command.
Figure 5. GPO configured as I2C answer ready (GPO field = 0xX3)
/ϸĐŚĂŶŶĞů
KƉĞŶ
^ĞƐƐŝŽŶ
ŶLJ/ϸ
ĐŽŵŵĂŶĚ
DϮϰ^Zdždž
ƌĞƐƉŽŶƐĞ
ŶLJ/ϸ
ĐŽŵŵĂŶĚ
DϮϰ^Zdždž
ƌĞƐƉŽŶƐĞ
ŶLJ/ϸ
ĐŽŵŵĂŶĚ
DϮϰ^Zdždž
ƌĞƐƉŽŶƐĞ
'WKĂƐ/ϸ
ĂŶƐǁĞƌƌĞĂĚLJ
D^ϯϬϳϴϴsϰ
16/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
2.7.4
Signal descriptions
MIP NDEF Message writing in Progress configuration
(GPO field = 0x3X)
When the GPO is configured as MIP, its state goes to the low state when the RF host writes
the NDEF length to another value than 0x0000.
During an RF session, when M24SR04 changes an NDEF file and updates the NDEF length
with a value different from 0x0000, GPO is driven low after a delay (1) following the
beginning of the correspondent UpdateBinary command execution.
GPO will remain low during the writing time (2), before being released.
Figure 6. GPO configured as MIP (GPO field = 0x3X)
Z&ĐŚĂŶŶĞů
hƉĚĂƚĞƚŚĞE&
ůĞŶŐƚŚ͊сϬdžϬϬϬϬ
DϮϰ^Zdždž
ƌĞƐƉŽŶƐĞ
ŶLJŽƚŚĞƌ
ĐŽŵŵĂŶĚ
'WKĂƐD/W
;ϭͿ
;ϮͿ
D^ϯϬϳϴϱsϯ
1. CmdEOFtoGPlow (RF command End of frame to GPO low)
2. Writing time duration
DocID024754 Rev 15
17/90
20
Signal descriptions
2.7.5
M24SR04-Y M24SR04-G
INT Interrupt configuration (GPO field = 0xX4 or 0x4X)
The I2C or RF host can send a negative pulse on the GPO pad. The GPO pad goes to the
low state at the end of the command and goes to the high state at the end of the M24SR04
response.
During an RF or I2C session, when M24SR04 receives a valid Interrupt command,
M24SR04 GPO pin is driven low after (1) or (3) for a duration of (4) in RF, or after
responding in I2C (2). Then GPO pin is released.
Figure 7. GPO configured as INT (GPO field = 0xX4 or 0x4X)
Z&Žƌ/ϸ
ĐŚĂŶŶĞů
;ϭͿ
Žƌ
;ϯͿ
;ϮͿ
DϮϰ^Zdždž
ƌĞƐƉŽŶƐĞ
^ĞŶĚ
/ŶƚĞƌƌƵƉƚ
ŶLJŽƚŚĞƌ
ŽƉĞƌĂƚŝŽŶ
'WKĂƐ/Ed
;ϰͿ
D^ϯϬϳϴϳsϯ
1. CmdSTPtoGPlow (I2C command Stop to GPO low)
2. After NewCmdlbFB (new I2C command last bit of first byte)
or
after AnswerlbFB (I2C answer last bit of first byte)
3. CmdEOFtoGPlow (RF command End of frame to GPO low)
4. GPO pulse duration
18/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
2.7.6
Signal descriptions
State Control configuration (GPO field = 0xX5 or 0x5X)
When the GPO is configured as State Control, the I2C or RF host can control the state of the
GPO by sending a dedicated command.
During an RF or I2C session, the M24SR04 can control the GPO pin. After receiving a valid
Set GPO command, GPO pin is driven low after a delay (1) or (3). GPO will be released
after a valid Reset command or after a Power off or upon closing the RF session.
Figure 8. GPO configured as State Control (GPO field = 0xX5 or 0x5X)
5)RU,ð&
FKDQQHO
*32DV
6WDWH&RQWURO
RU
5HVHW*32
FRPPDQG
RU
$Q\RWKHU
FRPPDQG
6HW*32
FRPPDQG
069
1. CmdSTPtoGPlow (I2C Set GPO command Stop to GPO low)
2. CmdSTPtoGPHZ (I2C Reset GPO command Stop to GPO HZ)
3. CmdEOFtoGPlow (RF Set GPO command End of frame to GPO low)
4. CmdEOFtoGPHZ (RF Reset GPO command End of frame to GPO HZ)
DocID024754 Rev 15
19/90
20
Signal descriptions
2.7.7
M24SR04-Y M24SR04-G
RF busy configuration (GPO field = 0x6X)
When the GPO is configured as RF busy, the GPO goes to the low state when the
M24SR04 is processing an RF command or when an RFsession is ongoing.
When an RF field is present, GPO is driven low after a delay (1) when M24SR04 detects the
first command. If the RF session is ongoing and M24SR04 receives a not-supported
command, GPO remains low. It will be released only at the end of the RF session, after (2).
Figure 9. GPO configured as RF busy (GPO field = 0x6X)
Z&ĐŚĂŶŶĞů
;ϭͿ
;ϮͿ
Z&ĐŽŵŵĂŶĚ
ŶŽƚƐƵƉƉŽƌƚĞĚ
;ϭͿ
;ϮͿ
^ĞŶƐZĞƋΘ
^ĞŶƐZĞƐ
Z&
ĐŽŵŵĂŶĚ
^;^Ϳ
'WKĂƐZ&ďƵƐLJ
D^ϯϬϳϵϬsϯ
1. CmdSOFtoGPlow (RF command Start of frame to GPO low)
2. CmdEOFtoGPHZ (RF command End of frame to GPO HZ)
20/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
M24SR04 memory management
3
M24SR04 memory management
3.1
Memory structure
The M24SR04 supports the NDEF Tag Application as defined in the NFC Forum Type 4
Tag. The M24SR04 is composed of three files:
•
One Capability Container file
•
One NDEF file
•
One System file: this is an ST-proprietary file
The System file contains some information on the configuration of the M24SR04 device.
The CC file gives some information about the M24SR04 itself and the NDEF file. The NDEF
file contains the User data.
3.1.1
File identifier
The file identifier is the value used in the Select command to select a file.
Table 3. File identifier
File identifier
3.1.2
Meaning
0xE101
System file
0xE103
CC file
0x0001
NDEF file
CC file layout
The CC file gives some information about the M24SR04 and the NDEF file. This file is a
read-only file for the RF or I²C host and cannot be modified by issuing a write command.
The T field, Read Access and Write Access fields can be changed by the RF or I²C host by
issuing a specific process (refer to Section 8: Functional procedures).
DocID024754 Rev 15
21/90
28
M24SR04 memory management
M24SR04-Y M24SR04-G
Table 4. CC file layout for 1 NDEF file
File offset
0x0000
Meaning
Number of bytes of CC file
(1)
Value
Comments
0x000F
15 bytes
0x20 or 0x10
V 2.0 or V 1.0
0x0002
Mapping version
0x0003
Maximum number of bytes that can be read
0x00F6
246 bytes
0x0005
Maximum number of bytes that can be written
0x00F6
246 bytes
(2)
T field
0x0007
0x04
0x0008
0x06
L field
0x0009
0x0001
FileID
0x0200
Maximum NDEF
file size
0x000D
0x00 (2)
Read access
0x000E
(2)
Write access
0x000B
NDEF file control TLV
0x00
1. According to the reader.
2. Delivery state.
3.1.3
NDEF file layout
The NDEF file contains the NDEF message which contains the User data. The RF host or
the I²C host can read and write data inside the file. The first two bytes named NDEF
Message Length define the size of the NDEF message. The NDEF Message Length shall
be managed by the application and the M24SR04 device does not check if its value is
relevant vs the data written by the RF or I²C host. The M24SR04 device uses the NDEF
Message Length, e. g. the standard read can be processed only inside the NDEF message;
otherwise, the M24SR04 device returns an error code. For more details about the read
command, refer to Section 5.6.7: ReadBinary command.
22/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
M24SR04 memory management
Table 5. NDEF file layout
File offset
0x0000
Byte 1
NDEF message length
0x0004
3.1.4
Byte 0
Byte 2
Byte 3
User data
User data
User data
User data
User data
User data
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
0x01FC
...
...
...
User data
System file layout
The system file specifies the configuration of the M24SR04. Table 6 lists the different fields.
Table 6. Field list
File offset
Field name
Number of
Read access Write access
bytes
Delivery state (1)
0x0000
Length system file
2
I²C or RF
-
0x0002
I²C protect
1
I²C or RF
I²C (2)
0x01
I²C or RF
I²C
(2)
0x00
I²C
(2)
0x11
(2)
0x00
0x0003
0x0004
I²C watchdog
GPO
1
1
I²C or RF
0x0012
0x0005
ST reserved
1
I²C or RF
I²C
0x0006
RF enable
1
I²C or RF
I²C (2)
0x xxxx xxx1(3)
0x0007
NDEF File
number (RFU)
1
I²C or RF
none
0x00
0x0008
UID
7
I²C or RF
none
0x0286 xx xx xx xx
xxor 0x028E xx xx xx
xx xx(4) (5)
0x000F
Memory Size
2
I²C or RF
none
0x01FF
0x0011
Product Code
1
I²C or RF
none
0x86 or 0x8E(5)
1. The delivery state for all passwords = 0x00000000000000000000000000000000.
2. The access is granted when the field I²C protect is set to the state Unprotected or when the right I²C
password was correctly received (see Section 3.5: I2C password).
3. Refer Table 11.
4.
x values are defined by ST to insure UID unicity.
5. Automotive grade
DocID024754 Rev 15
23/90
28
M24SR04 memory management
M24SR04-Y M24SR04-G
Table 7. Details about I2C watchdog
File offset
0x0003
b7- b0
The “I2C Watchdog” ensures the I2C host will not keep the session open, while
there is no more activity on the I2C bus (between the stop bit of the previous
transaction and the start bit of the next one)
– 0x00 (default value): the Watchdog is off
– Other values: If programmed to a non null value N, the Watchdog is enabled
and counts N*30 ms (30 ms is approximate) before releasing the I2C session.
Table 8. Details about the GPO field
File offset
b7
b6-b4
b3
b2-b0
0x0004
RFU
When an RF session is open:
0b000: High impedance
0b001: Session opened
0b010: WIP
0b011: MIP
0b100: Interrupt
0b101: State Control
0b110: RF Busy
0b111: RFU
RFU
When an I²C session is open:
0b000: High impedance
0b001: Session opened
0b010: WIP
0b011: I²C Answer Ready
0b100: Interrupt
0b101: State Control
0b110: RFU
0b111: RFU
Table 9. Details about the RF Session field
File offset
b7
0x0004
RFU
When an RF session is open:
0b001: Session opened
RFU
24/90
DocID024754 Rev 15
b6-b4
b3-b0
M24SR04-Y M24SR04-G
M24SR04 memory management
Table 10 gives some details about the ST reserved field.
Table 10. Details about the ST reserved field
File offset
b7-b0
0x0005
0x00
Table 11 gives some details about the RF enable field.
Table 11. Details about the RF enable field
File offset
b7
b6-b4
b3
b2-b1
b0
0x0006
0: the RF field is off (1)
1: the RF field is on (1)
RFU
0: the RF disable pad is at low state (1)
1: the RF disable pad is at high state (1)
RFU
0: the M24SR04 does not decode the command received from the RF interface
1: the M24SR04 decodes the command received from the RF interface
1. this field is written by the M24SR04.
3.2
Read and write access rights to the memory
An NDEF file can be locked for read or write accesses. It is also protected by a 128-bit
password that the host shall present before accessing the NDEF file. There are two 128-bit
passwords, one for the read access and the other one for the write access.
An NDEF file can be permanently locked for read or write accesses. Thus, the host cannot
access the NDEF file.
The read password shall be sent to the M24SR04 device before reading a read-locked
NDEF file.
The write password shall be present on the M24SR04 device before writing a write-locked
NDEF file. The write password shall be sent to change the read or write access. The read or
write access right is defined for the NDEF file.
3.2.1
State of the Read and Write access rights
Two bytes in the CC file are used to define the Read and Write access rights to the NDEF
file. For more details, refer to Section 3.1.2: CC file layout.
DocID024754 Rev 15
25/90
28
M24SR04 memory management
M24SR04-Y M24SR04-G
Table 12. Read access right
Value
Meaning
0x00
Read access without any security
0x80
Locked (1)
0xFE
Read not authorized
1. The read password shall be sent before reading in the NDEF file.
Table 13. Write access right
Value
Meaning
0x00
Write access without any security
0x80
Locked (1)
0xFF
Write not authorized
1. The write password shall be sent before writing in the NDEF file.
The state 0xFF and 0xFE cannot be changed by using the Read or Write passwords.
3.2.2
Changing the read access right to NDEF files
The state diagram on Figure 10 shows how to change the access right to read an NDEF file.
Figure 10. Changing the read access right to an NDEF file
ϬdžϬϬ
>ŽĐŬƚŚĞE&ĨŝůĞ;ϭͿ
hŶůŽĐŬƚŚĞE&ĨŝůĞ;ϮͿ
WĞƌŵĂŶĞŶƚůLJůŽĐŬƚŚĞE&ĨŝůĞ;ϯͿ
ϬdžϴϬ;ϰͿ
Ϭdž&;ϰͿ
WĞƌŵĂŶĞŶƚůLJƵŶůŽĐŬƚŚĞE&ĨŝůĞ
D^ϯϬϳϳϮsϰ
1. See the procedure to lock the read access (Section 8.4: Locking an NDEF file).
2. See the procedure to unlock the read access (Section 8.5: Unlocking an NDEF file).
3. See the procedure to permanently lock the read access (Section 8.6: Reaching the read-only state for an
NDEF file).
4. Proprietary state, not defined by NFC Forum Type 4 Tag. For NFC Forum compatible tags, the only
possible value of the read access rights are 0x00 (no restrictions on reads).
26/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
3.2.3
M24SR04 memory management
Changing the write access right to NDEF files
The state diagram on Figure 11 shows how to change the write access right to an NDEF file.
Figure 11. Changing the write access right to an NDEF file
ϬdžϬϬ
>ŽĐŬƚŚĞE&ĨŝůĞ;ϭͿ
hŶůŽĐŬƚŚĞE&ĨŝůĞ;ϮͿ
WĞƌŵĂŶĞŶƚůLJůŽĐŬƚŚĞE&ĨŝůĞ;ϯͿ
ϬdžϴϬ;ϰͿ
Ϭdž&&
WĞƌŵĂŶĞŶƚůLJƵŶůŽĐŬƚŚĞE&ĨŝůĞ
D^ϯϬϳϳϯsϰ
1. See the procedure to lock the write access.
2. See the procedure to unlock the write access.
3. See the procedure to permanently lock the write access (Section 8.6: Reaching the read-only state for an
NDEF file).
4. Proprietary state, not defined by NFC Forum Type 4 Tag. For NFC Forum compatible tags, it is mandatory
that the write access rights are set to either 0x00 (no restrictions on writes) or 0xFF (permanently locked).
0x80 might not be fully decoded with some smart phones.
3.3
Access right life time
The access right life time is validated while the NDEF file is selected or until the end of the
RF or I²C session. Once the read or write access right is granted, the host can send one or
more ReadBinary or UpdateBinary commands.
At the end of a session or when the host selects another file, the read and write access
rights are initialized.
3.4
NDEF file passwords
The NDEF file passwords protect the read or write access from an RF or I²C interface
from/to an NDEF file.
Two NDEF file passwords are available for each NDEF file:
•
Read password
•
Write password
The length of a password is 128 bits (16 bytes).
DocID024754 Rev 15
27/90
28
M24SR04 memory management
3.5
M24SR04-Y M24SR04-G
I2C password
The I²C password can be sent only by the I²C host. It activates the SuperUser rights. The I²C
host with the SuperUser rights can:
•
Access the NDEF file regardless of the right access and without sending the NDEF file
passwords.
•
Change the access rights regardless of the current state.
The length of the I²C password is 128 bits (16 bytes).
3.5.1
I²C password and I²C protect field of the System file
The I²C protect field in the system file can be set to:
•
0x00: the I²C host has the SuperUser right access without sending the I²C password
•
0x01: the I²C host has the SuperUser right access after sending the I²C password
For more details about the system file layout, refer to Section 3.1.4: System file layout.
28/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
4
Communication mechanism
Communication mechanism
This chapter describes the principle of communication between an RF or an I2C host and
the M24SR04 device.
4.1
Master and slave
The M24SR04 acts as a slave device on either the I2C-bus or the RF channel and therefore
waits for a command from the I2C master or the RF host before sending its response.
The RF host shall generate the RF field and the RF commands.
The I2C host shall supply the M24SR04 through the VCC pin and shall generate the I2C
clock on the SCL pad.
4.2
M24SR04 session mechanism
The M24SR04 is a dynamic NFC/RFID tag which can be accessed either from the RF or I2C
interface. The M24SR04 implements a token system. This token has two possible values,
RF or I2C. When the token exists and is assigned to one interface (RF or I2C), the M24SR04
cannot communicate with the other host.
4.2.1
RF token
The token is given to the RF interface once the anticollision is done. The release condition
can be either an RF field cut-off, or the reception of the command deselect, or when the I²C
host sends the KillRFsession.
4.2.2
I2C token
The token is given to the I2C interface when the I2C host has sent the correct device Select.
The release condition can be either a power down condition on VCC pin or the reception of a
I2C token release sequence from the I2C host, after which M24SR04 goes in Standby power
mode.
DocID024754 Rev 15
29/90
78
I²C and RF command sets
5
M24SR04-Y M24SR04-G
I²C and RF command sets
The command sets of the M24SR04 can be split in different command families. Most
commands are common between the RF and the I²C interface. Some commands are
specific to the RF interface and some others are specific to the I²C interface. This section
describes the M24SR04 command sets that can be issued by the RF or the I²C host.
There are three command families:
•
the NFC Forum Type 4 Tag command set
•
the ISO/IEC 7816-4 command set
•
the proprietary command set
The NFC Forum Type 4 Tag command set and the ISO/IEC 7816-4 command set use the IBlock format. For more details about the I-Block format, refer to Section 5.2: I-Block format.
Two other command formats exist:
•
the commands using the R-Block format
•
the commands using the S-Block format
For more details about these formats, refer to the corresponding sections: Section 5.3: RBlock format and Section 5.4: S-Block format.
This section gives a brief description of the RF and I²C host common commands. The
format of these command sets is the I-Block format.
Table 14 lists the RF and I²C command sets.
Table 14. RF and I²C command sets
Family
command set
NFC Forum
Type 4 Tag
ISO/IEC 7816-4
30/90
Class
byte
Instruction
code
NDEF Tag Application Select
0x00
0xA4
NDEF Tag Application
Select
CC select
0x00
0xA4
Select the CC file
NDEF select
0x00
0xA4
Select the NDEF file
System select
0x00
0xA4
Select the system file
ReadBinary
0x00
0xB0
Read data from file
UpdateBinary
0x00
0xD6
Write or erase data to a
NDEF file
Verify
0x00
0x20
Checks the right access of
a NDEF file or sends a
password
ChangeReferenceData
0x00
0x24
Change a Read or write
password
EnableVerificationRequirement
0x00
0x28
Activate the password
security
DisableVerificationRequirement
0x00
0x26
Disable the password
security
Command name
DocID024754 Rev 15
Brief description
M24SR04-Y M24SR04-G
I²C and RF command sets
Table 14. RF and I²C command sets (continued)
Family
command set
5.1
Class
byte
Instruction
code
Brief description
ST Proprietary EnablePermanentState
0xA2
0x28
Enables the Read Only or
Write Only security state
ST Proprietary ExtendedReadBinary
0xA2
0xB0
Read data from file
Command name
Structure of the command sets
The exchange of data between the RF or the I²C host and the M24SR04 uses three kinds of
data formats, called blocks:
Note:
•
I-Block: to exchange the command and the response
•
R-Block: to exchange positive or negative acknowledgment
•
S-Block: to use either the Deselect command or the Frame Waiting eXtension (WTX)
command or response
max WTX value = 0x0B
This section describes the structure of the I-Block, R-block and S-Block. This format is used
for the application command set.
5.2
I-Block format
The I-Block is used to exchange data between the RF or the I²C host and the M24SR04. It is
composed of three fields. Table 15 details the I-Block format.
Table 15. I-Block format
SoD
Payload
EoD
Name
Length
PCB
DID
0
CRC
1 byte
1 byte
1 to 251 bytes
2 bytes
PCB field
DID field (optional)
RF or I²C host to M24SR04: C-APDU
M24SR04 to RF or I²C host: R-APDU
2 CRC bytes
DocID024754 Rev 15
31/90
78
I²C and RF command sets
M24SR04-Y M24SR04-G
Table 16. PCB field of the I-Block format
b7-b6
b5
b4
b3
b2
b1
b0
0b00
0
0
X
0
1
X
I-Block
RFU
Must be set to 0
DID field, if bit is set
Must be set to 0
Must be set to 1
Block number
When the RF or I²C host sends a command to the M24SR04 the format of the payload is the
C-APDU.
When the M24SR04 sends a command to the RF or I²C host, the format of the payload is
the R-APDU.
5.2.1
C-APDU: payload format of a command
The C-APDU format is used by the RF or the I²C host to send a command to the M24SR04.
Table 17 describes its format.
Table 17. C-APDU format
Payload field
Name
Length
CLA
INS
P1
P2
LC
Data
Le
1 byte
1 byte
1 byte
1 byte
1 byte
Lc byte
1 byte
Class byte
0x00: standard command
0xA2: ST command
Instruction byte
Param Byte 1
Param Byte 2
Number of bytes of the Data field
Data bytes
Number of bytes to be read in the M24SR04 memory
32/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
5.2.2
I²C and RF command sets
R-APDU: payload format of a response
the M24SR04 uses the I-Block format to reply to a command which used the I-Block format.
This format is described in Table 18.
Table 18. R-APDU format
Payload field
Name
Length
Data (optional)
SW1
SW2
Le byte
1 byte
1 byte
Data
Status byte 1
Status byte 2
5.3
R-Block format
The R-Block is used to convey positive or negative acknowledgment between the RF or I²C
host and the M24SR04.
Table 19. R-Block format
PCB
CRC
R(ACK) without the DID field: 0xA2 or 0xA3
R(ACK) with the DID field: 0xAA or 0xAB
R(NAK) without the DID field: 0xB2 0xB3
R(NAK) with the DID field: 0xBA 0xBB
2 CRC bytes
There are two kinds of R-Blocks:
•
R(ACK): the acknowledgment block sent by the RF or I²C host or by the M24SR04.
•
R(NAK): the non-acknowledgment block sent by the RF or I²C host or by the
M24SR04.
DocID024754 Rev 15
33/90
78
I²C and RF command sets
M24SR04-Y M24SR04-G
Table 20. R-Block detailed format
b7-b6
b5
b4
b3
b2
b1
b0
0b10
1
X
X
0
0
X
R-Block
RFU
0: NAK
1: ACK
0: DID field is not present
1: DID field is present
Must be set to 0
RFU
Block number
5.4
S-Block format
The S-Block is used to exchange control information between a reader and a contactless
tag.
Table 21. S-Block format
SoD
EoD
NFC frame
Length
PCB
DID
Payload
CRC
1 byte
1 byte
0 to 1 bytes
2 bytes
0xC2: for S(DES) when the DID field is not present
0xCA: for S(DES) when the DID field is present
0xF2: for S(WTX) when the DID field is not present
0xFA: for S(WTX) when the DID field is present
DID field (optional)
WTX field (1)
2 CRC bytes
1. This field is present when b5-b4 bits are set to 0b11 (S-Block is a WTX). see Table 22: S-Block detailed format.
There are two requests using the S-Block format:
•
S(DES): the deselect command
•
S(DES) is only applicable to RF
•
S(WTX): the Waiting Frame eXtension command or response.
A Waiting Time eXtension request occurs, in RF or I2C, when the operating time
needed by M24SRxx is greater than 9.6 ms.
The WTX field indicates the increase time factor to be used in this command execution
(FDTtemp = WTX * 9.6 ms). The max WTX value is equal 0x0B.
34/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
I²C and RF command sets
Table 22. S-Block detailed format
b7-b6
b5-b4
b3
b2
b1
b0
0b11
X
X
0
1
0
S-Block
0b00: Deselect
0b11: WTX
0: DID field is not present
1: DID field is present
RFU
RFU
Note:
After receiving the deselect command, the session is released and M24SR04 enters the
Standby power mode. In I2C, the session is released after executing the I2C token release
sequence.
In response to a RATS command, M24SR04 returns FWI parameter (default frame waiting
time used); when M24SR04 needs more time for a command execution, it requests a frame
waiting time extension by responding 0xF2 0xWTX (Request waiting time = FWI * WTX). If
the reader accepts M24SR04 request, it acknowledges by sending the command 0xF2
0xWTX. The frame waiting time becomes FWI * WTX for the current command only.
5.5
CRC of the I2C and RF frame
The two CRC bytes check the data transmission between the RF host or I²C host and the
M24SR04. For the RF frame, the CRC is computed on all the data bits in the frame,
excluding parity bits, SOF and EOF, and the CRC itself.
For the I²C frames, the CRC is computed on all data bits of the frame excluding Device
select and the CRC itself.
The CRC is as defined in ISO/IEC 13239. The initial register content shall be 0x6363 and
the register content shall not be inverted after calculation.
DocID024754 Rev 15
35/90
78
I²C and RF command sets
M24SR04-Y M24SR04-G
5.6
NFC Forum Type 4 Tag protocol
5.6.1
Commands set
With the NFC Forum Type 4 Tag protocol, the commands are common to RF and I²C.
Table 23. Command set overview
Command name
5.6.2
Brief description
NDEF Tag Application Select
Select the NDEF Tag Application
Capability Container Select
Select the capability container (CC) file using the
Select command
NDEF Select
Select the NDEF file
System File Select
Select the system file
ReadBinary
Read data from a file
UpdateBinary
Write new data to a file
Status and error codes
This section lists the status and the error code of the M24SR04.
Table 24. Status code of the M24SR04
Value
SW1
SW2
Comment
0x90
0x00
Command completed
successfully
Table 25. Error code of the M24SR04
SW1
SW2
1 byte
1 byte
Value
0x62
0x80
File overflow (Le error)
Value
0x62
0x82
End of file or record reached
before reading Le bytes
Value
0x63
0x00
Password is required
Value
0x63
0xCX
Password is incorrect, X further
retries allowed (X can take
value 0,1, 2)
Value
0x65
0x81
Unsuccessful updating
Value
0x67
0x00
Wrong length
Value
0x69
0x81
Cmd is incompatible with the
file structure
Value
0x69
0x82
Security status not satisfied
Value
0x69
0x84
Reference data not usable
Length
36/90
DocID024754 Rev 15
Comment
M24SR04-Y M24SR04-G
I²C and RF command sets
Table 25. Error code of the M24SR04 (continued)
SW1
SW2
1 byte
1 byte
Value
0x6A
0x80
Incorrect parameters Le or Lc
Value
0x6A
0x82
File or application not found
Value
0x6A
0x84
File overflow (Lc error)
Value
0x6A
0x86
Incorrect P1 or P2 values
Value
0x6D
0x00
INS field not supported
Value
0x6E
0x00
Class not supported
Length
DocID024754 Rev 15
Comment
37/90
78
I²C and RF command sets
5.6.3
M24SR04-Y M24SR04-G
NDEF Tag Application Select command
the RF or the I²C host shall send this command to activate the NDEF Tag Application.
To activate the NDEF Tag Application, the RF host sends the Select command (see
Table 26) in addition to the sequence defined in the NFC Forum digital protocol.
To activate the NDEF Tag Application, the I²C host sends the Select command (see
Table 26) in addition to the GetSession or the Kill RF session command.
Table 26 defines the C-APDU of the Select command to select the NDEF Tag Application
(called NDEF Tag Application Select).
Table 26. C-APDU of the NDEF Tag Application Select command
Name
Value
CLA
INS
P1
P2
Lc
Data
Le
0x00
0xA4
0x04
0x00
0x07
0xD27600
00850101
0x00
Class byte
Select instruction code
P1 field
P2 field
Number of bytes of data
Application ID
Le field
Table 27 defines the R-APDU of the NDEF Tag Application Select command.
Table 27. R-APDU of the NDEF Tag Application Select command
5.6.4
Data
SW1
SW2
Comment
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed
Value
-
0x6A
0x82
NDEF Tag Application not found
Value
-
0x6D
0x00
Class not supported
Capability Container Select command
The RF or I²C host uses the Capability Container Select procedure to select the capability
container (CC) file.
The CC file is selected when this command returns "command completed" in the R-APDU.
Table 28 defines the C-APDU of the Select command to select the CC file (called Capability
Container Select).
38/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
I²C and RF command sets
Table 28. C-APDU of the Capability Container Select command
Name
Value
CLA
INS
P1
P2
Lc
Data
Le
0x00
0xA4
0x00
0x0C
0x02
0xE103
-
Class byte
Select instruction code
P1 field
P2 field
Number of bytes of data
CC file ID
-
Table 29 defines the R-APDU of the CC Select command.
Table 29. R-APDU of the Capability Container Select command
5.6.5
Data
SW1
SW2
Comment
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed
Value
-
0x6A
0x82
File or application not found
Value
-
0x6D
0x00
Class not supported
NDEF Select command
The RF or I²C host uses the NDEF Select command to select the NDEF file.
The NDEF file is selected when this command returns “command completed” in the RAPDU. Table 30 defines the C-APDU of the Select command to select the NDEF file (called
NDEF Select).
In case of a password is required to access the NDEF file, the NDEF Select command will
disable any previously granted access rights to this file. The Verify command might be
required to access the file.
Table 30. C-APDU of the NDEF Select command
Name
Value
CLA
INS
P1
P2
Lc
Data
Le
0x00
0xA4
0x00
0x0C
0x02
0x000X
-
Class byte
Select instruction code
P1 field
P2 field
Number of bytes of data
0x0001: first NDEF file
-
DocID024754 Rev 15
39/90
78
I²C and RF command sets
M24SR04-Y M24SR04-G
Table 31 defines the R-APDU of the NDEF Select command.
Table 31. R-APDU of the NDEF Select command
Data
5.6.6
SW1
SW2
Comment
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed
Value
-
0x6A
0x82
File or application not found
System File Select command
The RF or I²C host uses this command to select the system file.
The System file is selected when this command returns "command completed" in the RAPDU.
Table 32 defines the C-APDU of the command to select the System file (called System
Select).
Table 32. C-APDU of the System File Select command
Name
CLA
INS
P1
P2
Lc
Data
Le
0x00
0xA4
0x00
0x0C
0x02
0xE101
-
Class byte
Select instruction code
P1 field
P2 field
Number of bytes of data
System file ID
-
Table 33 defines the R-APDU of the System File Select command.
Table 33. R-APDU of the System File Select command
40/90
Data
SW1
SW2
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed
Value
-
0x6A
0x82
Capability container not found, no data
is returned
DocID024754 Rev 15
Comment
M24SR04-Y M24SR04-G
5.6.7
I²C and RF command sets
ReadBinary command
On receiving the ReadBinary command, the M24SR04 reads the requested memory field
and sends back its value in the R-APDU response.
Before sending a ReadBinary command, a file shall be selected by using a Select
command.
The Response of the ReadBinary command is successful when the data to be read is within
the selected file (1); in other words, when the sum of P1-P2 and Le fields is equal to or lower
than the selected file length.
Table 34 defines the ReadBinary command.
Table 34. C-APDU of the ReadBinary command
Name
CLA
INS
P1 & P2
Lc
Data
Le
0x00
0xB0
2 bytes
-
-
1 byte
Class byte
Read instruction code
Offset in the file selected
Number of bytes to read between
0x01 ≤ Le ≤ max(Selected File length, 0xF6)
Table 35 defines the R-APDU of the ReadBinary command.
Table 35. R-APDU of the ReadBinary command
Length
Data
SW1
SW2
-
1 byte
1 byte
Don’t
care(1)
Comment
Command completed
Value
Content read
0x90
Value
-
0x67
0x00
Wrong length
Value
-
0x69
0x82
Security status not satisfied
Value
-
0x6A
0x82
File or application not found
Value
-
0x6E
0x00
Class not supported
1. For more information, please contact your local ST support.
1. For more details about CC file, refer to Section 3.1.2: CC file layout.
For more details about NDEF file, refer to Section 3.1.3: NDEF file layout.
For more details about System file, refer to Section 3.1.4: System file layout.
DocID024754 Rev 15
41/90
78
I²C and RF command sets
5.6.8
M24SR04-Y M24SR04-G
UpdateBinary command
On receiving the UpdateBinary command, the M24SR04 writes the data field into the
selected file and sends back a status in the R-APDU response. If needed, M24SRxx will
request a timing extension (see Section 5.4).
Before sending an UpdateBinary command, a file shall be selected by issuing a Select
command.
Table 36 defines the UpdateBinary command.
Table 36. C-APDU of the UpdateBinary command
Name
CLA
INS
P1 & P2
Lc
Data
Le
0x00
0xD6
2 bytes
1 byte
Lc bytes
-
Class byte
Write instruction code
Offset in the file selected
Number of bytes of data (0x01 ≤ Lc ≤ 0xF6)
Data to write in the M24SR04 memory
-
Table 37 defines the R-APDU of the UpdateBinary command.
Table 37. R-APDU of the UpdateBinary command
Note:
42/90
Data
SW1
SW2
Comment
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed
Value
-
0x65
0x81
Unsuccessful updating
Value
-
0x67
0x00
Wrong length
Value
-
0x69
0x82
Security status not satisfied
Value
-
0x6A
0x82
File or application not found
Value
-
0x6E
0x00
Class not supported
Chaining is not supported on “UpdateBinay” command.
For further return codes and definitions, refer to Status and error codes.
DocID024754 Rev 15
M24SR04-Y M24SR04-G
5.7
I²C and RF command sets
ISO/IEC 7816-4 commands
The ISO/IEC 7816-4 command set offers some extended features such as the protection of
the NDEF file. This command set is used to manage the right access of the NDEF file.
5.7.1
Verify command
The Verify command has two functions:
1.
Check if a password is required to access to the NDEF file (the LC field = 0x00).
2.
Check that the password embedded in the Verify command allows the access to the
memory (the Lc field = 0x10 and the password is present).
When the Lc field if equal to 0x00, the verify command returns a success code (0x90 00)
provided that the access to the NDEF file does not require a password. When the access to
the NDEF file is protected, the response to the Verify command returns an error code
(0x63 00).
When the Lc field equals 0x10, on receiving the Verify command, the M24SR04 compares
the requested password with the data contained in the request and reports whether the
operation has been successful in the response.
Before sending this command, an NDEF file shall be selected by issuing the NDEF Select
command. Thus, this command checks the right access condition of the last NDEF file
selected.
After a successful command, an access is granted for the whole NDEF file.
Table 38 defines the Verify command.
Table 38. Verify command format
Name
CLA
INS
P1 & P2
Lc
Data
Le
0x00
0x20
2 bytes
1 byte
Lc bytes
-
Class byte
Instruction code
Password identification
0x0001: Read NDEF password transmit
0x0002: Write NDEF password transmit
0x0003: I²C password transmit (1)
Other: RFU
0x00: the password is not present
0x10: the password is present in the data field
Password
1. This code can only be issued by the I²C host.
DocID024754 Rev 15
43/90
78
I²C and RF command sets
M24SR04-Y M24SR04-G
Table 39 defines the R-APDU of the Verify command.
Table 39. R-APDU of the Verify command
Data
SW1
SW2
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed, the password is correct
Value
-
0x69
0x85
The conditions of use are not satisfied (e.g. no
NDEF file was selected)
Value
-
0x69
0x81
Cmd incompatible with file structure
Value
-
0x69
0x82
Security status not satisfied
Value
-
0x6A
0x80
Incorrect parameter in cmd data field
Value
-
0x63
0x00
A password is required
Value
-
0x63
0xCX (1)
Value
-
0x6E
0x00
1. At each session, the RF or
5.7.2
I 2C
Comment
The password transmitted is incorrect and X
encodes the number of further allowed retries.
Class not supported
host can check a password 3 times.
Change Reference Data command
The Change Reference Data command replaces the read or write password related to the
NDEF files previously selected. It can be performed only if the security status satisfies the
security attributes for this command.
Before sending this command, the verify command with the correct NDEF write password
shall be issued. Thus, this command changes the reference data of the NDEF file.
Table 40 defines the Change Reference Data command.
Table 40. Change reference data command format
Name
CLA
INS
P1 & P2
Lc
Data
Le
0x00
0x24
2 bytes
1 byte
Lc bytes
-
Class byte
Instruction code
Password identification
0x0001: Read password transmit
0x0002: Write password transmit
0x0003: I²C password transmit (1)
Other: RFU
0x10: the password is present in the data field
NDEF file or I²C Password
1. This code can only be issued by the I²C host.
44/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
I²C and RF command sets
Table 41 defines the R-APDU of the Change Reference Data command.
Table 41. R-APDU of the Change Reference Data command
5.7.3
Data
SW1
SW2
Comment
Length
0
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed, the access right has
been changed
Value
-
0x69
0x81
Cmd is incompatible with the
file structure
Value
-
0x65
0x81
Unsuccessful updating
Value
-
0x69
0x82
Security status not satisfied
Value
-
0x6A
0x80
CC file or System file selected
Value
-
0x6A
0x82
File or application not found
Value
-
0x6A
0x86
Incorrect P1 or P2 values
Value
-
0x6E
0x00
Class not supported
Enable Verification Requirement command
The Enable Verification Requirement command activates the protection by password of the
NDEF file. When this command is successful, the read or write access to the NDEF file is
protected by a 128-bit password. It can be performed only if the security status satisfies the
security attributes for this command.
This command can update the right access of the NDEF file by writing into the EEPROM. In
this case, the response timing will be around 5 ms.
Before sending this command, the verify command with the correct NDEF write password
shall be issued. Thus, this command changes the access right of the NDEF file.
Table 42 defines the Enable Verification requirement command.
Table 42. Enable Verification Requirement command format
Name
CLA
INS
P1 & P2
Lc
Data
Le
0x00
0x28
2 bytes
-
-
-
Class byte
Instruction code
New security attributes
0x0001: Enable the read protection of the NDEF file
0x0002: Enable the write protection of the NDEF file
Other: RFU
-
The last five bits identify the password sent in the Verify command.
DocID024754 Rev 15
45/90
78
I²C and RF command sets
M24SR04-Y M24SR04-G
Table 43 defines the R-APDU of the Enable Verification Requirement command.
Table 43. R-APDU of the Enable Verification Requirement command
5.7.4
Data
SW1
SW2
Comment
Length
0
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed, the password is
correct
Value
-
0x69
0x81
Cmd is incompatible with the file structure
Value
-
0x69
0x82
Security status not satisfied
Value
-
0x6A
0x80
CC file or System file selected
Value
-
0x6A
0x82
File or application not found
Value
-
0x6A
0x86
Incorrect P1 or P2 values
Disable Verification Requirement command
The Disable Requirement command deactivates the protection by password of the NDEF
file. When this command is successful, the read or write access to the NDEF file is granted
without security requirements. It can be performed only if the security status satisfies the
security attributes for this command.
Before sending this command, the verify command with the correct NDEF write password
shall be issued. Thus, this command changes the access right of the NDEF file.
This command can update the right access of the NDEF file by writing into the EEPROM. In
this case, the response timing will be around 6 ms.
Table 44 defines the Disable Verification Requirement command.
Table 44. Disable Verification Requirement command format
Name
CLA
INS
P1 & P2
Lc
Data
Le
0x00
0x26
2 bytes
-
-
-
Class byte
Instruction code
New security attributes
0x0001: Disable the read protection of the NDEF file
0x0002: Disable the write protection of the NDEF file
Other: RFU
-
Table 45 defines the R-APDU of the Disable Verification Requirement command.
46/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
I²C and RF command sets
Table 45. R-APDU of the Disable Verification Requirement command
5.8
Data
SW1
SW2
Comment
Length
0
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed, the password is correct
Value
-
0x69
0x81
Cmd is incompatible with the file structure
Value
-
0x69
0x82
Security status not satisfied
Value
-
0x6A
0x80
CC file or System file selected
Value
-
0x6A
0x82
File or application not found
Value
-
0x6A
0x86
Incorrect P1 or P2 values
Value
-
0x6E
0x00
Class not supported
Value
-
0x65
0x81
Update failed
ST Proprietary command set
The RF or I²C host can be issued with the command set described in this chapter.
5.8.1
ExtendedReadBinary command
On receiving the ExtendedReadBinary command, the M24SR04 reads the requested
memory field and sends back its value in the R-APDU response.
Before sending an ExtendedReadBinary command, a file shall be selected by issuing an
NDEF select command.
The response of the ExtendedReadBinary command will be successful even if the data to
be read is beyond the NDEF message. The command returns an error code if the data to be
read goes beyond the end of the file.
Table 46. C-APDU of the ExtendedReadBinary command
Name
Length
CLA
INS
P1 & P2
Lc
Data
Le
0xA2
0xB0
2 bytes
-
-
1 byte
ST Class byte
Read instruction code
Offset in the file selected
Number of bytes to read between 0x01 ≤ Le ≤ 0xF6
Table 47 defines the R-APDU of the read binary command.
DocID024754 Rev 15
47/90
78
I²C and RF command sets
M24SR04-Y M24SR04-G
Table 47. R-APDU of the ExtendedReadBinary command
Data
Length
SW1
Le bytes
SW2
1 byte
comment
1 byte
(1)
Value
Content read
0x90
Don’t care
Command completed
Value
-
0x67
0x00
Wrong length
Value
-
0x69
0x82
Security status not satisfied
Value
-
0x6A
0x82
File or application not found
Value
-
0x6A
0x86
Incorrect P1 or P2 values
Value
-
0x6E
0x00
Class not supported
1. For more information, please contact your local ST support.
5.8.2
EnablePermanentState command
The command configures the NDEF file to the ReadOnly or to the WriteOnly State.
This command can update the right access to the NDEF file by writing into the EEPROM. In
this case, the response timing will be around 6 ms.
Table 48 defines the EnablePermanentState requirement command.
Table 48. EnablePermanentState command format
Name
Length
CLA
INS
P1 & P2
Lc
Data
Le
0xA2
0x28
2 bytes
-
-
-
Class byte
Instruction code
New security attributes
0x0001: Enable the read protection of the NDEF file
0x0002: Enable the write protection of the NDEF file
Other: RFU
-
Table 49 defines the R-APDU of the EnablePermanentState command.
Table 49. R-APDU table of the EnablePermanentState command
48/90
Data
SW1
SW2
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed
Value
-
0x65
0x81
Update failed
Value
-
0x67
0x00
Wrong length
DocID024754 Rev 15
comment
M24SR04-Y M24SR04-G
I²C and RF command sets
Table 49. R-APDU table of the EnablePermanentState command (continued)
5.8.3
Data
SW1
SW2
comment
Value
-
0x69
0x82
Security status not satisfied
Value
-
0x6A
0x80
CC file or System file selected
Value
-
0x6A
0x82
File or application not found
Value
-
0x6A
0x86
Incorrect P1 or P2 values
Value
-
0x6E
0x00
Class not supported
DisablePermanentState command
The command configures the NDEF file to the Lock state.
This command can update the right access of the NDEF file by writing into the EEPROM. In
this case, the response timing will be around 6 ms. This command is only valid in I2C. The
SuperUser rights must have been granted to execute the command.
Before sending this command, an NDEF file shall be selected by issuing the NDEF Select
command.
Table 50 defines the DisablePermanentState requirement command.
Table 50. DisablePermanentState command format
Name
Length
CLA
INS
P1 & P2
Lc
Data
Le
0xA2
0x26
2 bytes
-
-
-
Class byte
Instruction code
New security attributes
0x0001: Disable the read protection of the NDEF file
0x0002: Disable the write protection of the NDEF file
Other: RFU
-
Table 51 defines the R-APDU of the DisablePermanentState command.
Table 51. R-APDU of the DisablePermanentState command
Data
SW1
SW2
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed
Value
-
0x65
0x81
Update failed
Value
-
0x67
0x00
Wrong length
Value
-
0x69
0x82
Security status not satisfied
DocID024754 Rev 15
comment
49/90
78
I²C and RF command sets
M24SR04-Y M24SR04-G
Table 51. R-APDU of the DisablePermanentState command (continued)
5.8.4
Data
SW1
SW2
comment
Value
-
0x6A
0x80
CC file or System file selected
Value
-
0x6A
0x82
File or application not found
Value
-
0x6A
0x86
Incorrect P1 or P2 values
Value
-
0x6E
0x00
Class not supported
UpdateFileType command
This command allows to modify the file type of a selected file to Proprietary file (0x05) or
NDEF file (0x04).
NFC Forum compatible tags must configure the file as NDEF file (0x04).
This command is granted only, when application and file are selected and if the file length
and access right have previously been set to 0X00h (message invalid, all access rights
granted).
This command will update the file type located in the CC file by writing into the EEPROM. In
this case, the response timing will be around 6 ms.
Table 52 defines the UpdateFileType command.
Table 52. UpdateFileType command format
Name
Value
CLA
INS
P1
P2
Lc
Data
Le
0xA2
0xD6
0x00
0x00
0x01
0x04 or
0x05
-
Class byte
Select instruction code
P1 field
P2 field
Number of bytes of data
File type
-
Table 53 describes the R-APDU of the UpdateFileType command.
Table 53. R-APDU of the UpdateFileType command
50/90
Data
SW1
SW2
Comment
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
Command completed
Value
-
0x69
0x82
Security status not satisfied
Value
-
0x6A
0x80
CC file or System file selected
DocID024754 Rev 15
M24SR04-Y M24SR04-G
I²C and RF command sets
Table 53. R-APDU of the UpdateFileType command (continued)
5.8.5
Data
SW1
SW2
Comment
Value
-
0x6A
0x82
File or application not found
Value
-
0x6A
0x86
Incorrect P1 or P2 values
SendInterrupt command
On receiving the SendInterrupt command, the M24SR04 generates a negative pulse on the
GPO pin. It starts at the end of the command and ends at the end of the RF response.
Before sending this command, the system file shall be selected by issuing the System
Select command.
Table 54 defines the SendInterrupt command.
Table 54. SendInterrupt command format
CLA
INS
P1&P2
Lc
Data
Le
Length
1 byte
1 byte
2 bytes
1 byte
-
-
Value
0xA2
0xD6
0x001E
0x00
-
-
Table 55 describes the R-APDU of the SendInterrupt command.
Table 55. R-APDU of the SendInterrupt command
5.8.6
Data
SW1
SW2
Comment
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
The interrupt has been sent
Value
-
0x6A
0x80
The GPO is not configured as an interrupt mode
Value
-
0x6A
0x82
File or application not found
Value
-
0x6A
0x86
Incorrect P1 or P2 values
Value
-
0x6E
0x00
Class not supported
StateControl command
On receiving the StateControl command with reset value: data 0x00, the M24SR04 drives
the GPO pin low. On receiving the StateControl command with set value: data 0x01, the
M24SR04 releases the GPO pin which returns to HZ.
Before sending this command, the system file shall be selected by issuing the System
Select command.
Table 56 defines the State Control command.
DocID024754 Rev 15
51/90
78
I²C and RF command sets
M24SR04-Y M24SR04-G
Table 56. StateControl command format
CLA
INS
P1&P2
Lc
Data
Le
Length
1 byte
1 byte
2 bytes
1 byte
-
-
Reset value
0xA2
0xD6
0x001F
0x01
0x00
-
Set value
0xA2
0xD6
0x001F
0x01
0x01
-
Table 57. R-APDU of the StateControl command
5.9
Data
SW1
SW2
Comment
Length
-
1 byte
1 byte
-
Value
-
0x90
0x00
The set or reset has been sent
Value
-
0x6A
0x80
The GPO is not configured in StateControl mode
Value
-
0x6A
0x82
File or application not found
Value
-
0x6A
0x86
Incorrect P1 or P2 values
Value
-
0x6E
0x00
Class not supported
Specific RF command set
This section describes the command set that can be issued only by the RF host.
5.9.1
Anticollision command set
Table 58 lists the commands that can be issued only by the RF host. The format of these
commands is described in the NFC Forum Digital Protocol specification.
Table 58. Commands issues by the RF host
Family command set
NFC-A technology
Command name
Instruction code
ALL_REQ
0x52 (1)
SENS_REQ
0x26 (1)
SDD_REQ
0x93 or 0x95 or 0x97
SEL_REQ
0x93 or 0x95 or 0x97
SLP_REQ
0x50
1. Code on 7 bits.
5.9.2
RATS command and ATS response
RATS command and ATS response are used for NFC Forum Type 4A Tag Platform Device
Activation (as defined in NFC Forum Digital Protocol specification).
Table 59 details the RATS command. This command shall be sent after the anticollision
process.
52/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
I²C and RF command sets
Table 59. RATS command
Name
INS
Param
CRC
Byte field
0xE0
1 byte
2 bytes
Bit field
b7-b4
b3-b0
Instruction code
FSDI
DID (0 ≤ DID ≤ 14)
2 CRC bytes
The FSDI field codes the FSD that defines the maximum size that an RF or I²C host is able
to receive. Table 60 gives the conversion from FDSI to FSD.
Table 60. Conversion from FDSI to FSD
FSDI
0x0
0x1
0x2
0x3
0x4
0x5
0x6
0x7
0x8
0x9h0xE
0xF
16
24
32
40
48
64
96
128
256
RFU
256
FSD
The DID field defines the value of the addressed M24SR04.
Table 61. ATS response
Name
TL
T0
TA(1)
TB(1)
TC(1)
CRC
Byte field
0x05
0x78
1 byte
1 byte
0x02
2 bytes
Bit field
b8-b5
b4-b1
Length of the ATS
response
FSCI = 256 bytes
The maximum ascending data rate is 106 kbps
The maximum descending data rate is 106 kbps
FWI field (9.6 ms when TB = 0x50)
SFGI field (302 µs when TB = 0x50)
The DID is supported
2 CRC bytes
The FSCI codes the FSC which stands for the maximum frame size that the M24SR04 is
able to receive. The M24SR04 is able to receive up to 256 bytes of command. If the RF or
I²C host sends a command with more than 256 bytes, the M24SR04 will not be able to treat
the command and will not reply.
The FWI which stands for the Frame Waiting time Integer codes the FWT. This time
corresponds to the maximum duration while an RF or I²C host shall send before sending the
next command.
DocID024754 Rev 15
53/90
78
I²C and RF command sets
M24SR04-Y M24SR04-G
The SFGI which stands for the Start-up Frame Guard Time is the minimum time that the
reader shall wait after receiving the response of the M24SR04.
5.9.3
PPS command & response
PPS (Protocol and Parameter Selection) command and response are defined in ISO/IEC
14443-4, in the Protocol Activation of PICC Type A.
The PPS command allows to change the data rates of the ascending (RF host to M24SR04)
and descending (M24SR04 to RF host) data rates.
Table 62. PPS command
-
Name
INS
PPS0
PPS1
CRC
Byte field
0xDX
0x11
1 byte
2 bytes
Bit field
INS
b7-b4
b3-b0
0b0000
b3-b2
b1-b0
Instruction code
DID
PPS1 is present
RFU
PPS1 Descending data rate
Ascending data rate
2 CRC bytes
The ascending and descending data rates shall be coded as described in Table 63.
Table 63. Ascending and descending data rate coding
Value
Data rate
0b00
0b01
0b10
0b11
106 kbps
RFU
RFU
RFU
When the M24SR04 is able to change both data rates, it returns the following response. The
data rate of this response is 106 kbps; then, the M24SR04 changes the ascending and
descending data rates.
Table 64 gives the details of the PPS response.
Table 64. PPS response
Name
INS
-
PPS0
Byte field
0xDX
-
0x11
Bit field
b8-b5
b4-b1
Response code
DID field
2 CRC bytes
54/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
5.10
I²C and RF command sets
Specific I²C command set
Table 65 lists the commands that can only be issued by the I²C host.
Table 65. Specific I²C commands
5.10.1
Command name
Format
Class byte
Instruction
code
GetI2Csession
-
-
0x26
Open an I²C session when the
RF session is not ongoing
KillRFsession
-
-
0x52
Kill the RF session and open an
I²C session
Brief description
GetI2Csession command
The GetI2Csession command opens an I²C session if an RF session is not ongoing.
Table 66 defines the GetI2Csession command.
Table 66. GetI2Csession command format
INS
Length
1 byte
Value
0x26
The GetI2Csession command does not create a reply.
When an RF session is ongoing, the M24SRxx will not acknowledge the command.
When no RF session is ongoing, the M24SRxx will acknowledge the command and open an
I²C session.
5.10.2
KillRFsession command
The KillRF session command closes the RF session and opens an I²C session.
Table 67 defines the KillRFsession command.
Table 67. KillRFsession command format
INS
Length
1 byte
Value
0x52
The KillRFsession command does not create a reply. The RF session is closed when the
device acknowledges the command.
Caution:
A successful completion of the RF command is not certain.
DocID024754 Rev 15
55/90
78
RF device operation
M24SR04-Y M24SR04-G
6
RF device operation
6.1
Anticollision and Device Activation command set for the RF
interface
The M24SR04 device supports the command set defined in the NFC-A Technology and the
Type 4A Tag Platform chapters of the NFC Digital Protocol V1.0 specification.
6.2
Open an RFsession
Once the RF host has terminated the anticollision procedure and retrieve the ATS response,
it shall send the SelectApplication command. The M24SR04 will open an RF session. At this
point, the RF host can send the applicative command set and the I²C cannot communicate
with the M24SR04 without closing first the RF session using the I2C KillRFsession
command.
6.3
Close an RFsession
The RF host can close the RF session by issuing one of these methods:
6.4
•
send an S(DES) command
•
turn off the RF field
Applicative command set
The applicative command set is composed of the following command sets:
56/90
•
the NFC Forum Type 4 Tag command set
•
the ISO/IEC 7816-4 command set
•
the proprietary command set
DocID024754 Rev 15
M24SR04-Y M24SR04-G
7
I2C device operation
I2C device operation
The M24SR04 device supports the I2C protocol. The device that controls the data transfer is
known as the bus master, and the other one as the slave device. A data transfer can only be
initiated by the bus master, which also provides the serial clock for synchronization. The
M24SR04 device is a slave in all communications.
7.1
I2C communication protocol
The I2C communication is built on a system of command and reply exchange. The I2C host
starts the communication by sending a request. Once a valid request is received by the
M24SR04 device, it carries out an internal operation and creates its answer.
As defined in this document, and except for the GetI2C session and Kill RF session
commands, the definition of a valid request is a command with a right CRC value.
Figure 12 shows an exchange of a command and a response between the I²C host and the
M24SR04. Once the I²C session is open, the I²C host can send a command. The command
is composed of:
•
a Device Select field with the R/W bit set to 0.
•
the command field.
The M24SR04 acknowledges on the reception of each byte.
Once the M24SR04 is ready to send the answer, the I²C host shall:
•
send a Device Select field with the R/W bit set to 1.
•
release the SDA line and send an SCL clock.
The I²C host shall acknowledge on the reception of each byte.
Figure 12. Command and response exchange
,&EXV
5: 6
'HYLFH6HOHFW
&RPPDQG
5: 3
6
'HYLFH6HOHFW
5HVSRQVH
3
069
Legend:
S is the I2C Start bit sequence
P is the I2C Stop bit sequence
R/W is the 8th bit of Device Select.
Note:
A restart during a command and response exchange is not supported by the M24SR04.
After a command, the I2C host can execute a Polling sequence to determine when the
response is available.
Polling sequence: Loop on < START (S) + DeviceSelect with RW=0 + read NACK/ACK
+ STOP (P) >
The response is available as soon as the M24SR04 sends an ACK ( host read will a
'0').
DocID024754 Rev 15
57/90
78
I2C device operation
7.2
M24SR04-Y M24SR04-G
Start condition
A Start condition is identified by a falling edge of serial data (SDA) while the serial clock
(SCL) is stable in the high state. A Start condition must precede any data transfer command.
The device continuously monitors (except during an instruction processing) the SDA and the
SCL for a Start condition, and does not respond unless one is given.
7.3
Stop condition
A Stop condition is identified by a rising edge of serial data (SDA) while the serial clock
(SCL) is stable and driven high. A Stop condition terminates a command between the device
and the bus master.
7.4
I²C token release sequence
As explained in the M24SR04-Y M24SR04-G session mechanism, the I²C communication is
reserved to the I²C host when the session token has the I²C value.
The following sequence explains how to release the I²C value of the session token.
I²C communication with the M24SR04 starts with a valid Start condition, followed by a
device select code.
If the delay between the Start condition and the following rising edge of the Serial Clock
(SCL) that samples the most significant of the Device Select exceeds the tSTART_OUT_MAX
time (see Table 78), the I²C logic block is reset and further incoming data transfer is ignored
until the next valid Start condition.
Figure 13. I²C token release sequence
!W67$57B287BPD[
6&/
6'$
065'HYLFH
6HOHFWFRGH
6WDUW
FRQGLWLRQ
6WRS
FRQGLWLRQ
06Y9
Note:
58/90
If the above delay is below tSTART_OUT_min (see Table 78), I2C session token stays
unmodified.
If the delay is between tSTART_OUT_min and tSTART_OUT_max, I2C session token might or not
be released. This range of delay is not authorized for safe operation.
DocID024754 Rev 15
M24SR04-Y M24SR04-G
7.5
I2C device operation
I²C timeout on clock period
During a data transfer on the I2C bus, if the serial clock high pulse or serial clock low pulse
exceeds tCL_RESET value that is the maximum value specified in Table 78, the I2C logic
block is reset and any further incoming data transfer is ignored until the next valid Start
condition.
If the serial clock high pulse is under the maximum value of tCHCL and the serial clock low
pulse is under the maximum value of tCLCH in Table 78, the I2C logic block is not reset.
For proper operation, the serial clock high pulse should not be higher than tCHCL and lesser
than tCL_RESET, and the serial clock low pulse should not be higher than tCHCH and lesser
tCL_RESET.
7.6
Acknowledge bit (ACK)
The acknowledge bit is used to indicate a successful byte transfer. The bus transmitter,
whether a bus master or a slave device, releases the serial data (SDA) after sending eight
bits of data. During the 9th clock pulse period, the receiver pulls the SDA low to
acknowledge the receipt of the eight data bits.
7.7
Data input
During data input, the device samples serial data (SDA) on the rising edge of the serial clock
(SCL). For a correct device operation, the SDA must be stable during the rising edge of the
SCL, and the SDA signal must change only when the SCL is driven low.
7.8
I²C device address
The device address is the concatenation of the group number coded on 4 bits and the I2C
address coded on 3 bits, as shown in Table 68.
Table 68. I2C device address format
b7-b4
b3
b2
b1
b0
0b1010
1
1
0
0bx
Group number
E2 bit
E1 bit
E0 bit
0 = Request
1 = Answer
DocID024754 Rev 15
59/90
78
I2C device operation
7.9
M24SR04-Y M24SR04-G
I²C frame format
The I2C frame is composed of three fields:
1.
SOD field: contains the device select and the PCB. The PCB field is detailed in
Section 5.2.
2.
Payload field: contains the command and its parameter, as defined in the I2C command
set.
3.
EOD field: contains the two CRC bytes computed on the SOD but excluding the device
select byte field.
Table 69 shows the format of an I2C frame.
Table 69. I2C frame format
I2C frame
SOD
0xAC or 0xAD
1 byte
Payload
EOD
1 to 251 bytes
2 bytes
Device select
0xAC: to send a request to the M24SR04
0xAD: to read a response of the M24SR04
PCB field
I2C command or I2C answer
2 CRC bytes
7.9.1
Example of I²C frame commands
NDEF Tag Application command
This example presents the I2C frame of an NDEF Tag Application Select command. The I2C
frame is detailed in Table 70.
Table 70. I2C host to M24SR04
Field
SOD
Value
0xAC
0x02 or 0x03
Payload
EOD
Command field
35 C0 or DF BE
Device select
PCB field
0x00 A4 04 00 07 D2 76 00 00 85 01 01 00
2 CRC bytes
Before sending a new command, the I2C host can send an I2C frame to read the M24SR04
answer to the NDEF tag Application Select command.
60/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
I2C device operation
Table 71. M24SR04 to I2C host
Field
SOD
Payload
I2C host to
M24SR04
Value
EOD
M24SR04 to I2C host
0xAD
0x02 or 0x03
0x90 00
F1 09 or 2D 53
Device select
PCB field
I2C command
2 CRC bytes
Figure 14 shows the I2C frame of the NDEF tag Application Select command.
Figure 14. NDEF tag Application Select command
6WDUWRIWKH
WUDQVPLVVLRQ
RIWKHUHTXHVW
,ð&EXV
6
$&. $&. $&. $&. $&. $&. $&. $&. $&. $&. $&. $&. $&. $&.
Ϭdž Ϭ
ϬdžϬϮ ϬdžϬϬ Ϭdžϰ ϬdžϬϰ ϬdžϬϬ ϬdžϬϳ ϬdžϮ Ϭdžϳϲ ϬdžϬϬ ϬdžϬϬ Ϭdžϴϱ ϬdžϬϭ ϬdžϬϭ ͘͘͘
(QGRIWKH
WUDQVPLVVLRQ
RIWKHUHTXHVW
,ð&EXV
$&. $&. $&.
͘͘͘
[ [ [&
W
6WDUWRIWKH
WUDQVPLVVLRQ
RIWKHDQVZHU
,ð&EXV
^
<
<
<
<
<
EŽ<
ŶĚŽĨƚŚĞ
ƚƌĂŶƐŵŝƐƐŝŽŶ
ŽĨƚŚĞĂŶƐǁĞƌ
͘͘͘
Ϭdž ϬdžϬϮ ϬdžϵϬ ϬdžϬϬ Ϭdž&ϭ ϬdžϬϵ
W
/HJHQG
$&.
$&.
[ %\WHVHQWE\WKH,ð&KRVW
1R$&.
$FNQRZOHGJHE\WKH,ð&KRVW
$FNQRZOHGJHE\065[[<
1R$FNQRZOHGJHE\WKH,ð&KRVW
[ %\WHVHQWE\WKH065[[< [ %\WHVHQWE\WKH065[[<
6
6WDUWVHQWE\WKH,ð&KRVW
6WRSVHQWE\WKH,ð&KRVW
3
DocID024754 Rev 15
6WRSVHQWE\WKH,ð&KRVW
3
06Y9
61/90
78
I2C device operation
7.10
M24SR04-Y M24SR04-G
Open an I²C session
To open an I²C session, the I²C host shall send either the GetSession command or the
KillRFsession command. The GetSession Command opens an I²C session if an RF session
in not currently opened.
A KillRFsession command closes the current RF session if it exist and opens an I²C
session.
When an I²C session is opened, the RF host cannot communicate with the M24SR04 and
cannot close the I²C session.
7.11
Close the I²C session
There are three ways to close an I²C session:
62/90
•
turn off the Vcc power supply
•
send the I2C token release sequence
•
wait for the I²C watchdog when it is enabled
•
wait for the I²C timeout on clock period
DocID024754 Rev 15
M24SR04-Y M24SR04-G
8
Functional procedures
Functional procedures
This section describes some procedure to access the memory or manage its protection.
8.1
Selection of an NDEF message
The RF or I²C host shall use this procedure to detect the NDEF message inside an
M24SR04.
The NDEF detection procedure is as follows:
8.2
1.
Open an RF or an I²C session
2.
Send the SelectNDEFTagApplication command
3.
Select the CC file
4.
Read the CC file
5.
Select the NDEF file.
Reading of an NDEF message
The RF or I²C host executes the NDEF read procedure to read the NDEF file.
1.
Detect successfully the NDEF file using the NDEF detection procedure
2.
Check that the read access without any security is granted for the NDEF file from the
information provided by the CC file
3.
Select the NDEF file
4.
Read the NDEF file.
Note:
Reading the NDEF file should not go beyond the NDEF Length field (NLEN), which
indicates the size of the NDEF message stored in the NDEF file.
8.3
Reading a locked NDEF file
The RF or I²C host executes this procedure to read an NDEF file which has been locked
previously.
1.
Select the NDEF Tag Application
2.
Select the NDEF file
3.
Verify the Read password by using the Verify command
4.
Read the data in the NDEF file.
DocID024754 Rev 15
63/90
78
Functional procedures
8.4
M24SR04-Y M24SR04-G
Locking an NDEF file
The RF or I²C host executes this procedure to protect an NDEF file.
1.
8.5
Select the NDEF Tag Application
2.
Check the right access provided by the CC file
3.
Select the NDEF file
4.
Transmit the NDEF file Write password by using the Verify command
5.
Lock the NDEF file by sending the Enable verification command.
Unlocking an NDEF file
The RF or I²C host executes this procedure to unlock an NDEF file which has been locked
previously.
8.6
1.
Select the NDEF Tag Application
2.
Select the NDEF file
3.
Verify the NDEF file Write password or the I²C password by using the Verify command
4.
Unlock the NDEF file by sending the Disable verification command.
Reaching the read-only state for an NDEF file
The RF or I²C host executes this procedure to reach the read-only state for an NDEF file.
8.7
1.
Select the NDEF Tag Application
2.
Select the NDEF file
3.
Transmit the NDEF file Write password or the I²C password by using the Verify
command
4.
Send an EnablePermanentState command as the Write access right of the previous
Select NDEF file.
Changing an NDEF password procedure
The RF or I²C host could use this procedure to change one NDEF password. it can be a
Read or Write password.
1.
64/90
Select the NDEF Tag Application
2.
Select the NDEF file
3.
Transmit the NDEF file Write password or the I²C password by using the Verify
command
4.
Change the password by sending a ChangeReferenceData command.
DocID024754 Rev 15
M24SR04-Y M24SR04-G
8.8
Functional procedures
Changing a File type Procedure
The RF or I²C host executes this procedure to change the File Type of a file for which all
access rights were previously granted.
1.
8.9
Select the NDEF Tag Application
2.
Select the File to be modified
3.
Set the File Length to 0x00 using the UpdateBinary command
4.
Send an UpdateFileType command with the New file Type as data.
Updating a NDEF file
When there's enough space in the file to update it with new content, the following steps
should be followed to update the NDEF message:
1.
Select the NDEF Tag Application
2.
Select the NDEF file
3.
Unlock the NDEF file if necessary
4.
Write the NDEF length to 0x0000 with the Update Binary command.
5.
Write the NDEF message in the NDEF message field using one or more Update Binary
commands.
6.
Write the NDEF length of the NDEF message using the Update Update command.
It is recommended the NDEF length is read back and checked against the desired value to
ensure the Update sequence has been correctly performed.
DocID024754 Rev 15
65/90
78
UID: Unique identifier
9
M24SR04-Y M24SR04-G
UID: Unique identifier
The M24SR04 is uniquely identified by a 7 bytes unique identifier (UID). The UID is a readonly code and comprises:
•
The IC manufacturer code on 1 byte (0x02 for STMicroelectronics).
•
The Product code on 1 byte.
•
A device number on 5 bytes.
Table 72 describes the UID format.
Table 72. UID format
0x02
IC manufacturer code
M24SR04 product code
Device number
1. Automative grade
66/90
DocID024754 Rev 15
0x86 or 0x8E(1)
5 bytes
M24SR04-Y M24SR04-G
10
Maximum ratings
Maximum ratings
Stressing the device above the ratings listed in Table 73 may cause permanent damage to
the device. These are stress ratings only and operation of the device at these or any other
conditions above those indicated in the operating sections of this specification is not implied.
Exposure to absolute maximum rating conditions for extended periods may affect the device
reliability.
Table 73. Absolute maximum ratings
Symbol
TA
Parameter
Min.
Max.
Ambient operating temperature
for grade 6
- 40
85
Ambient operating temperature
for grade 5
- 25
85
- 65
150
°C
15
25
°C
-
9
months
Storage temperature
TSTG
Storage temperature
Storage time
TLEAD
VIO
Lead temperature
during soldering
UFDFPN8,
SO8, TSSOP8
Sawn Bumped
Wafer (kept in
its antistatic
bag)
°C
UFDFPN8,
SO8, TSSOP8
I2C input or output range and GPO
Unit
see note (1)
°C
- 0.50
6.5
V
RF supply current AC0 - AC1
-
100
mA
VMAX_1 (2)
RF input voltage
amplitude between
AC0 and AC1, GND
pad left floating
VAC0-VAC1
-
10
V
VMAX_2 (2)
AC voltage between
AC0 and GND, or AC1
and GND
VAC0-GND or
VAC1-GND
- 0.5
4.5
V
VESD
Electrostatic discharge
voltage (human body
model) (3)
AC0-AC1
-
1000
V
Electrostatic discharge
voltage (human body
model) (3)
Other pads
-
3500
V
ICC
(2)
VESD
1. Compliant with JEDEC Std J-STD-020D (for small body, Sn-Pb or Pb assembly), the ST ECOPACK®
7191395 specification, and the European directive on Restrictions on Hazardous Substances (ROHS
directive 2011/65/EU, July 2011).
2. Based on characterization, not tested in production. Maximum absorbed power = 100 mW @ 7.5 A/m
3. AEC-Q100-002 (compliant with JEDEC Std JESD22-A114A, C1 = 100 pF, R1 = 1500 Ω, R2 = 500 Ω)
DocID024754 Rev 15
67/90
78
I2C DC and AC parameters
11
M24SR04-Y M24SR04-G
I2C DC and AC parameters
This section summarizes the operating and measurement conditions, and the DC and AC
characteristics of the device in I2C mode. The parameters in the DC and AC characteristic
tables that follow are derived from tests performed under the measurement conditions
summarized in the relevant tables. Designers should check that the operating conditions in
their circuit match the measurement conditions when relying on the quoted parameters.
Table 74. I2C operating conditions
Symbol
VCC
TA
Parameter
Min.
Max.
Supply voltage range Y
2.7
5.5
Supply voltage range G
2.4
5.5
Ambient operating temperature for grade 6
–40
85
Ambient operating temperature for grade 5
-25
85
Unit
V
°C
Table 75. AC test measurement conditions
Symbol
Parameter
CL
Load capacitance
tr, tf
Input rise and fall times
Min.
Max.
Unit
100
-
pF
50
ns
Vhi-lo
Input levels
0.2 VCC to 0.8 VCC
V
Vref(t)
Input and output timing reference levels
0.3 VCC to 0.7 VCC
V
Figure 15. AC test measurement I/O waveform
,QSXWDQG2XWSXW
7LPLQJ5HIHUHQFH/HYHOV
,QSXW/HYHOV
ೌ9&&
ೌ9&&
ೌ9&&
ೌ9&&
$,&
Table 76. Input parameters
Symbol
68/90
Parameter
Min.
Max.
Unit
CIN
Input capacitance (SDA)
-
8
pF
CIN
Input capacitance (other pins)
-
6
pF
tNS
Pulse width ignored (Input filter on SCL and SDA)
-
80
ns
DocID024754 Rev 15
M24SR04-Y M24SR04-G
I2C DC and AC parameters
Table 77. I2C DC characteristics
Symbol
Parameter
ILI
Input leakage current
(SCL, SDA)
ILO
Output leakage current
ICC0
ICC1
Standby power mode
supply current
Supply current
(I2C Session open)
Test condition
Min.
Max.
Unit
VIN = VSS or VCC
device in Standby mode
-
±2
µA
SDA in Hi-Z, external voltage applied on SDA:
VSS or VCC
-
±2
µA
VCC = 3.3 V, with RF ON
-
30
VCC = 3.3 V, with RF OFF
-
5
(1)
VCC = 5.5 V, with RF ON
-
30
VCC = 5.5 V, with RF OFF
-
5
VCC = 3.3 V, with RF ON
-
150
VCC = 3.3 V, with RF OFF
-
150
VCC = 5.5 V, with RF ON
-
150
VCC = 5.5 V, with RF OFF
ICC2
Supply current (2)
(Read binary)
-
150
VCC = 3.3 V (fC = 1 MHz), with RF ON
(3)
-
250
VCC = 3.3 V (fC = 1 MHz), with RF OFF
(3)
-
200
(3)
-
250
VCC = 5.5 V (fC = 1 MHz),with RF OFF (3)
-
200
(3)
VCC = 5.5 V (fC = 1 MHz),with RF ON
VCC = 3.3 V (fC = 1 MHz),with RF ON
ICC3
Supply current (2)
(Update binary)
-
550
VCC = 3.3 V (fC = 1 MHz),with RF OFF
(3)
-
500
VCC = 5.5 V (fC = 1 MHz), with RF ON
(3)
-
550
VCC = 5.5 V (fC = 1 MHz), with RF OFF (3)
-
500
µA
µA
µA
µA
VIL
Input low voltage
(SDA, SCL)
VCC = 2.7 V (grade Y)
VCC = 2.4 V (grade G)
VCC = 5.5 V
-0.45
0.3
VCC
V
VIH
Input high voltage
(SDA, SCL)
VCC = 2.7 V (grade Y)
VCC = 2.4 V (grade G)
VCC = 5.5 V
0.7 VCC
6.5
V
VIL
Input low voltage
(RF disable)
VCC = 2.7 V (grade Y)
VCC = 2.4 V (grade G)
VCC = 5.5 V
0.45
V
VIH
Input high voltage
(RF disable)
VCC = 2.7 V (grade Y)
VCC = 2.4 V (grade G)
VCC = 5.5 V
1.4
-
V
Output low voltage (SDA)
IOL = 3 mA, VCC = 5.5 V
-
0.4
V
Output low voltage (GPO)
IOL = 1 mA,
VCC = 2.7 V (grade Y) or 2.4 V (grade G)
to VCC = 5.5 V
-
0.4
V
VOL
-
1. When an RF session is Opened, Icc corresponds to the standby power mode.
2. Characterized only.
3. Input levels as defined in Figure 15.
DocID024754 Rev 15
69/90
78
I2C DC and AC parameters
M24SR04-Y M24SR04-G
Table 78. I2C AC characteristics (400 kHz)
Test conditions specified in Table 74
(preliminary data based on design simulations)
Symbol
Alt.
fC
Parameter
Min.
Max.
Unit
fSCL
Clock frequency
0.05
400
kHz
tCHCL
(1)
tHIGH
Clock pulse width high
0.6
20000
µs
tCLCH
(2)
tLOW
Clock pulse width low
1.3
20000
µs
40000
-
µs
Input signal rise time
(3)
(3)
ns
(3)
ns
tCL_reset
tXH1XH2
tR
Clock reset
tXL1XL2
tF
Input signal fall time
(3)
tDL1DL2
tF
SDA (out) fall time
20
300
ns
tDXCX
tSU:DAT
Data in set up time
100
-
ns
tCLDX
tHD:DAT
Data in hold time
0
-
ns
tCLQX(4)
tDH
Data out hold time
100
-
ns
(5)
tAA
Clock low to next data valid (access time)
-
900
ns
tCLQV
tCHDX (6)
tSU:STA
Start condition set up time
600
-
ns
tDLCL
tHD:STA
Start condition hold time
600
-
ns
tCHDH
tSU:STO
Stop condition set up time
600
-
ns
tDHDL
tBUF
Time between Stop condition and next Start condition
1300
-
ns
tW
tWR
I²C write time in one page
-
5
ms
I²C write time up to 246 bytes
-
150
ms
-
Pulse width ignored (input filter on SCL and SDA)
-
80
ns
-
Delay for I²C token release
20
40
ms
tNS
(7)
tSTART_OUT
1. tCHCL timeout.
2. tCLCH timeout.
3.
There is no min. or max. value for the input signal rise and fall times. It is however recommended by the I²C specification that the input
signal rise and fall times be more than 20 ns and less than 300 ns when fC < 400 kHz.
4. To avoid spurious Start and Stop conditions, a minimum delay is placed between SCL=1 and the falling or rising edge of
SDA.
5. tCLQV is the time (from the falling edge of SCL) required by the SDA bus line to reach 0.8VCC in a compatible way with the
I2C specification (which specifies tSU:DAT (min) = 100 ns), assuming that the Rbus × Cbus time constant is less than 500 ns
(as specified in Figure 17).
6. For a restart condition, or following a write cycle.
7. Characterized only, not tested in production.
70/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
I2C DC and AC parameters
Table 79. I2C AC characteristics (1 MHz)
Test conditions specified in Table 74
(preliminary data based on design simulations)
Symbol
Alt.
fC
Parameter
Min.
Max.
Unit
fSCL
Clock frequency
0.05
1000
kHz
tCHCL
(1)
tHIGH
Clock pulse width high
260
-
ns
tCLCH
(2)
tLOW
Clock pulse width low
500
-
ns
tR
Input signal rise time
(3)
(3)
ns
(3)
ns
tXH1XH2
tXL1XL2
tF
Input signal fall time
(3)
tDL1DL2
tF
SDA (out) fall time
20
120
ns
tDXCX
tSU:DAT Data in set up time
50
-
ns
tCLDX
tHD:DAT Data in hold time
0
-
ns
100
-
ns
-
450
ns
tSU:STA Start condition set up time
250
-
ns
tDLCL
tHD:STA Start condition hold time
250
-
ns
tCHDH
tSU:STO Stop condition set up time
250
-
ns
500
-
ns
I²C write time in one page
-
5
ms
I²C write time up to 246 bytes
-
150
ms
Pulse width ignored (input filter on SCL and
SDA)
-
80
ns
tCLQX
tCLQV
(4)(5)
tCHDX
(6)
tDH
Data out hold time
tAA
Clock low to next data valid (access time)
tDHDL
tBUF
tW
tWR
tNS (7)
-
Time between Stop condition and next Start
condition
1. tCHCL timeout.
2. tCLCH timeout.
3. There is no min. or max. value for the input signal rise and fall times. It is however recommended by the I²C
specification that the input signal rise and fall times be less than 120 ns when fC < 1 MHz.
4. To avoid spurious Start and Stop conditions, a minimum delay is placed between SCL=1 and the falling or
rising edge of SDA.
5. tCLQV is the time (from the falling edge of SCL) required by the SDA bus line to reach 0.8VCC in a
compatible way with the I2C specification (which specifies tSU:DAT (min) = 100 ns), assuming that the Rbus
× Cbus time constant is less than 500 ns (as specified in Figure 17).
6. For a reStart condition, or following a write cycle.
7. Characterized only, not tested in production.
DocID024754 Rev 15
71/90
78
I2C DC and AC parameters
M24SR04-Y M24SR04-G
Figure 16. I2C AC waveforms
T8,8,
T8(8(
T#(#,
T#,#(
3#,
T$,#,
T8,8,
3$! )N
T#($8
T#,$8
T8(8(
3TART
CONDITION
3$!
)NPUT
3$! T$8#8
#HANGE
T#($( T$($,
3TART
3TOP
CONDITION CONDITION
3#,
3$! )N
T7
T#($(
T#($8
3TOP
CONDITION
7RITE CYCLE
3TART
CONDITION
T#(#,
3#,
T#,16
T#,18
$ATA VALID
3$! /UT
T$,$,
$ATA VALID
!)E
11.1
I2C timing measurement condition
Figure 17 represents the Maximum Rbus value versus bus parasitic capacitance (Cbus) for
an I2C bus at maximum frequency fC = 400 kHz.
Figure 17. Maximum Rbus value with fC = 400 kHz
"US LINE PULL UP RESISTOR
K
K½
4HE 2 BUS X #BUS TIME CONSTANT
MUST BE BELOW THE NS
TIME CONSTANT LINE REPRESENTED
ON THE LEFT
2
BU
S §
#
BU
S (ERE 2BUS § #BUS NS
6##
2BUS
N
S
)£# BUS
MASTER
3#,
-XXX
3$!
P&
"US LINE CAPACITOR P&
#BUS
AIB
72/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
I2C DC and AC parameters
Figure 18 represents the Maximum Rbus value versus bus parasitic capacitance (Cbus) for
an I2C bus at maximum frequency fC = 1 MHz.
Figure 18. Maximum Rbus value with fC = 1 MHz
"US LINE PULL UP RESISTOR K
6##
BUS §
#
BUS 2BUS
4HE 2BUS § #BUS TIME CONSTANT
MUST BE BELOW THE NS
TIME CONSTANT LINE REPRESENTED
ON THE LEFT
2
NS
)£# BUS
MASTER
3#,
-XXX
3$!
(ERE
2 BUS § #BUS NS
#BUS
"US LINE CAPACITOR P&
-36
Figure 19. I2C bus protocol
3#,
3$!
3$!
)NPUT
34!24
#ONDITION
3#,
3$!
-3"
3$!
#HANGE
34/0
#ONDITION
!#+
34!24
#ONDITION
3#,
3$!
-3"
!#+
34/0
#ONDITION
!)"
DocID024754 Rev 15
73/90
78
I2C DC and AC parameters
M24SR04-Y M24SR04-G
Table 80. Device select code
Device type identifier (1)
b7
Device select code 1
b6
0
Chip Enable address
b5
1
b4
0
1. The most significant bit, b7, is sent first.
74/90
DocID024754 Rev 15
b3
1
b2
1
b1
0
RW
b0
RW
M24SR04-Y M24SR04-G
12
GPO parameters
GPO parameters
This section lists the timing of the GPO according to its configuration.
Table 81. GPO timings measurement(1)
GPO field
I/F
Condition
I2C
GPO low when
session active
I2C
GPO return HZ
RF
RF
0xX1
Session Open
0x1X
I2C
0xX2
WIP
Message In
Progress
Kill session
CmdSTPtoGPlow
*add 100 µs for boot
after POR
15*
µs
15*
µs
I2C token release
sequence
AnswerlbLBtoGPHZ
105
ns
GPO low when
session active
NDEF select
CmdEOFtoGPlow
170
µs
GPO return HZ
Deselect
CmdEOFtoGPHZ
370
µs
CmdSTPtoGPlow
45
µs
Writing time duration
(No time extension)
5
ms
CmdEOFtoGPlow
75
µs
Writing time duration
(No time extension)
5
ms
55
or
5
µs
ms
Get session
Update Binary
GPO low when a
command is
computed
ReadBinary
or
UpdateBinary
CmdSTPtoGPlow
I2C
GPO return HZ on
new command
All commands
After NewCmdlbFB
or AnswerlbFB
105
ns
RF
GPO low when
modifying NDEF
UpdateBinary
(Msg Length #0)
CmdEOFtoGPlow
75
µs
RF
GPO low when
modifying NDEF
UpdateBinary
Writing time duration
(No time extension)
5
ms
I2C
GPO low after
receiving an
Interrupt command
SendInterrupt
CmdSTPtoGPlow
50
µs
I2C
GPO return HZ
All commands
After NewCmdlbFB
or AnswerlbFB
105
ns
RF
GPO low after
receiving an
Interrupt command
CmdEOFtoGPlow
75
µs
SendInterrupt
Pulse duration
540
µs
RF
0x3X
0xX4
0x4X
Unit
GPO low when
programming
0xX3
Interrupt
Typ.
Update Binary
I2C
I2C
Answer Ready
Symbol
GPO low when
programming
RF
0x2X
Command
RF
DocID024754 Rev 15
75/90
78
GPO parameters
M24SR04-Y M24SR04-G
Table 81. GPO timings measurement(1) (continued)
GPO field
I/F
Condition
Command
Symbol
Typ.
Unit
I2C
GPO low when
reset
Reset GPO
CmdSTPtoGPlow
40
µs
I2C
GPO return HZ
when set
Set GPO
CmdSTPtoGPHZ
40
µs
RF
GPO low when
reset
Reset GPO
CmdEOFtoGPlow
60
µs
RF
GPO return HZ
when set
Set GPO
CmdEOFtoGPHZ
60
µs
RF
GPO low after
receiving an RF
command
Anticollision
command or start
of RF disturb
(command using
another RF
protocol)
CmdSOFtoGPlow
6
µs
RF
GPO return HZ
after deselection or
RF command in
another protocol
Deselect or end of
RF disturb
(command using
another RF
protocol)
CmdEOFtoGPHZ
460
µs
0xX5
State Control
0x5X
RF Busy
0x6X
1. Characterized only.
76/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
13
Write cycle definition
Write cycle definition
Table 82. Write cycle definition(1)
Symbol
Parameter
Test Conditions
Min
Max
Ncycle
Write cycle
endurance(2)
TA ≤ 25 °C, VCC(min) < VCC < VCC(max)
-
1,000,000
TA ≤ 85 °C, VCC(min) < VCC < VCC(max)
-
600,000
Units
Write cycle
1. A write cycle is calculated per byte, and corresponds to a write to this byte.
2. Write cycle endurance is defined by characterization and qualification.
DocID024754 Rev 15
77/90
78
RF electrical parameters
14
M24SR04-Y M24SR04-G
RF electrical parameters
This section summarizes the operating and measurement conditions, and the DC and AC
characteristics of the device in RF mode.
The parameters in the DC and AC characteristics tables that follow are derived from tests
performed under the Measurement Conditions summarized in the relevant tables.
Designers should check that the operating conditions in their circuit match the measurement
conditions when relying on the quoted parameters.
Table 83. Default operating conditions
Symbol
TA
Parameter
Min.
Max.
Ambient operating temperature for grade 6
–40
85
Ambient operating temperature for grade 5
-25
85
Unit
°C
Table 84. RF characteristics (1)
Symbol
fC
H_ISO
H_Extended
MICARRIER
Parameter
Condition
Min
Typ
Max
Unit
13.553
13.56
13.567
MHz
TA = 0 °C to 50 °C
1500
-
7500
mA/m
TA = -40 °C to 85 °C
500
-
7500
mA/m
MI=(A-B)/(A+B)
90
-
100
%
External RF signal frequency
Operating field according to ISO
Operating field in extended
temperature range
100% carrier modulation index
t1
Pause A length
-
28/fC
-
40.5/fC
µs
t2
Pause A low time
-
7/fC
-
t1
µs
t3
Pause A rise time
-
1.5xt4
-
16/fC
µs
t4
Pause A rise time section
-
0
-
6/fC
µs
tMIN CD
Minimum time from carrier
generation to first data
From H-field min
-
-
5
ms
-
-
6
-
ms
fC = 13.56 MHz
22.5
25
27.5
pF
Chip reset
-
-
5
ms
Wt
CTUN
tRF_OFF
RF write time (including internal
Verify) for one page
Internal tuning capacitor in SO8 (2)
RF OFF time
1. All timing characterizations were performed on a reference antenna with the following characteristics:
External size: 75 mm x 48 mm
Number of turns: 6
Width of conductor: 0.6 mm
Space between two conductors: 0.6 mm
Value of the tuning capacitor in SO8: 25 pF (M24SR04)
Value of the coil: 5 µH
Tuning frequency: 14.2 MHz.
2. Characterized only, at room temperature only, measured at VAC0-VAC1 = 2 V peak to peak at 13.56 MHz.
78/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
15
Package information
Package information
In order to meet environmental requirements, ST offers these devices in different grades of
ECOPACK® packages, depending on their level of environmental compliance. ECOPACK®
specifications, grade definitions and product status are available at: www.st.com.
ECOPACK® is an ST trademark.
15.1
SO8N package information
Figure 20. SO8N - 8-lead plastic small outline, 150 mils body width, package outline
H X ƒ
!
!
C
CCC
B
E
PP
*$8*(3/$1(
$
K
%
%
!
,
,
62$B9
1. Drawing is not to scale.
Table 85. SO8N - 8-lead plastic small outline, 150 mils body width,
package data
inches (1)
millimeters
Symbol
Min
Typ
Max
Min
Typ
Max
A
-
-
1.750
-
-
0.0689
A1
0.100
-
0.250
0.0039
-
0.0098
A2
1.250
-
0.0492
-
-
b
0.280
-
0.480
0.0110
-
0.0189
c
0.170
-
0.230
0.0067
-
0.0091
D
4.800
4.900
5.000
0.1890
0.1929
0.1969
E
5.800
6.000
6.200
0.2283
0.2362
0.2441
E1
3.800
3.900
4.000
0.1496
0.1535
0.1575
e
-
1.270
-
-
0.0500
-
h
0.250
-
0.500
0.0098
-
0.0197
k
0°
-
8°
0°
-
8°
L
0.400
-
1.270
0.0157
-
0.0500
DocID024754 Rev 15
79/90
86
Package information
M24SR04-Y M24SR04-G
Table 85. SO8N - 8-lead plastic small outline, 150 mils body width,
package data (continued)
inches (1)
millimeters
Symbol
Min
Typ
Max
Min
Typ
Max
L1
-
1.040
-
-
0.0409
-
ccc
-
-
0.100
-
-
0.0039
1. Values in inches are converted from mm and rounded to 4 decimal digits.
Figure 21. SO8N - 8-lead plastic small outline, 150 mils bosy width,
package recommended footprint
[
2B621B)3B9
80/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
15.2
Package information
TSSOP8 package information
Figure 22. TSSOP8 - 8-lead thin shrink small outline, 3 x 4 mm, 0.5 mm pitch
package outline
ϴ
ϱ
Đ
ϭ
ϭ
ϰ
ɲ
ϭ
W
>
Ϯ
>ϭ
ď
Ğ
76623$0B9
1. Drawing is not to scale.
/
Table 86. TSSOP8 - 8-lead thin shrink small outline, 169 mils width, package data
inches (1)
millimeters
Symbol
Typ
Min
Max
Typ
Min
Max
A
-
-
1.200
-
-
0.0472
A1
0.050
-
0.150
0.0020
-
0.0059
A2
0.800
1.000
1.050
0.0315
0.0394
0.0413
b
0.190
-
0.300
0.0075
-
0.0118
c
0.090
-
0.200
0.0035
-
0.0079
CP
-
-
0.100
-
-
0.0039
D
2.900
3.000
3.100
0.1142
0.1181
0.1220
e
-
0.650
-
-
0.0256
-
E
6.200
6.400
6.600
0.2441
0.2520
0.2598
E1
4.300
4.400
4.500
0.1693
0.1732
0.1772
L
0.450
0.600
0.750
0.0177
0.02636
0.0295
L1
-
1.000
-
-
0.0394
-
α
0°
8°
0°
-
8°
1. Values in inches are converted from mm and rounded to 4 decimal digits.
DocID024754 Rev 15
81/90
86
Package information
15.3
M24SR04-Y M24SR04-G
UFDFPN8 package information
Figure 23. UFDFPN8 - 8-lead, 2 x 3 mm, 0.5 mm pitch ultra thin profile fine pitch
dual flat package outline
'
1
$ %
$
FFF 3LQ
,'PDUNLQJ
(
$
&
HHH &
6HDWLQJSODQH
$
6LGHYLHZ
[
DDD &
DDD &
[
7RSYLHZ
'
H
'DWXP$
E
/
/
/ /
3LQ
,'PDUNLQJ
(
.
/
H
/
H
7HUPLQDOWLS
'HWDLO³$´
(YHQWHUPLQDO
1'[ H
%RWWRPYLHZ
6HH'HWDLO³$´
=:EB0(B9
1. Max package warpage is 0.05 mm.
2. Exposed copper is not systematic and can appear partially or totally according to the cross section.
3. Drawing is not to scale.
4. The central pad (the area E2 by D2 in the above illustration) must be either connected to VSS or left floating
(not connected) in the end application.
82/90
DocID024754 Rev 15
M24SR04-Y M24SR04-G
Package information
Table 87. UFDFPN8 - 8- lead, 2 x 3 mm, 0.5 mm pitch ultra thin profile fine pitch
dual flat package mechanical data
inches (1)
millimeters
Symbol
Min
Typ
Max
Min
Typ
Max
A
0.450
0.550
0.600
0.0177
0.0217
0.0236
A1
0.000
0.020
0.050
0.0000
0.0008
0.0020
b(2)
0.200
0.250
0.300
0.0079
0.0098
0.0118
D
1.900
2.000
2.100
0.0748
0.0787
0.0827
D2 (rev MC)
1.200
-
1.600
0.0472
-
0.0630
E
2.900
3.000
3.100
0.1142
0.1181
0.1220
E2 (rev MC)
1.200
-
1.600
0.0472
-
0.0630
e
-
0.500
-
-
0.0197
-
K (rev MC)
0.300
-
-
0.0118
-
-
L
0.300
-
0.500
0.0118
-
0.0197
L1
-
-
0.150
-
-
0.0059
L3
0.300
-
-
0.0118
-
-
aaa
-
-
0.150
-
-
0.0059
bbb
-
-
0.100
-
-
0.0039
ccc
-
-
0.100
-
-
0.0039
ddd
-
-
0.050
-
-
0.0020
-
-
0.080
-
-
0.0031
eee
(3)
1. Values in inches are converted from mm and rounded to 4 decimal digits.
2. Dimension b applies to plated terminal and is measured between 0.15 and 0.30 mm from the terminal tip.
3. Applied for exposed die paddle and terminals. Exclude embedded part of exposed die paddle from
measuring.
DocID024754 Rev 15
83/90
86
Package information
15.4
M24SR04-Y M24SR04-G
WFDFPN8 package information
Figure 24. WFDFPN8 (MLP8) 8-lead, 2 x 3 mm, 0.5 mm pitch very thin fine pitch
dual flat package outline
'
'
'DWXP<
H
$ %
'
3LQ,'PDUNLQJ
3LQ
(
(
(
6HH=
'HWDLO
[
.
DDD #
1;E
[
1' [H
DDD #
7RSYLHZ
EEE - & $ %
GGG - &
%RWWRPYLHZ
'DWXP<
FFF #
HHH # $
6HDWLQJSODQH
&
$
/ /
H
6LGHYLHZ
/
H
7HUPLQDOWLS
'HWDLO³=´
$<B0(B9
1. Drawing is not to scale.
Table 88. WFDFPN8 8-lead thin fine pitch dual flat package no lead
mechanical data
inches(1)
millimeters
Symbol
84/90
Min
Typ
Max
Min
Typ
Max
A
0.700
0.750
0.800
0.0276
0.0295
0.0315
A1
0.025
0.045
0.065
0.0010
0.0018
0.0026
b
0.200
0.250
0.300
0.0079
0.0098
0.0118
D
1.900
2.000
2.100
0.0748
0.0787
0.0827
E
2.900
3.000
3.100
0.1142
0.1181
0.1220
e
-
0.500
-
-
0.0197
-
L1
-
-
0.150
-
-
0.0059
L3
0.300
-
-
0.0118
-
-
D2
1.050
-
1.650
0.0413
-
0.0650
E2
1.050
-
1.450
0.0413
-
0.0571
DocID024754 Rev 15
M24SR04-Y M24SR04-G
Package information
Table 88. WFDFPN8 8-lead thin fine pitch dual flat package no lead
mechanical data (continued)
inches(1)
millimeters
Symbol
Min
Typ
Max
Min
Typ
Max
K
0.400
-
-
0.0157
-
-
L
0.300
-
0.500
0.0118
-
0.0197
NX(2)
8
8
(3)
4
4
ND
aaa
-
-
0.150
-
-
0.0059
bbb
-
-
0.100
-
-
0.0039
ccc
-
-
0.100
-
-
0.0039
ddd
-
-
0.050
-
-
0.0020
eee(4)
-
-
0.080
-
-
0.0031
1. Values in inches are converted from mm and rounded to four decimal digits.
2. NX is the number of terminals.
3. ND is the number of terminals on “D” sides.
4. Applied for exposed die paddle and terminals. Excluding embedding part of exposed die paddle from
measuring.
DocID024754 Rev 15
85/90
86
Part numbering
16
M24SR04-Y M24SR04-G
Part numbering
Table 89. Ordering information scheme for packaged devices
Example:
M24
SR
04- Y
MN
6
T
/2
Device type
M24 = I2C interface device
Device feature
SR = Short range
Memory size
04 = memory size in Kbits
Voltage range
Y = 2.7 to 5.5 V
G = 2.4 to 5.5 V, only available in grade 5 (-25 to 85 °C)
Package
MN = SO8N
DW = TSSOP8
MC = UFDFPN8
MF = WFDFPN8(1)
SG12I = 120 µm ± 15 µm bumped and sawn inkless wafer on 8-inch frame(2)
Device grade
5 = industrial: device tested with standard test flow over -25 to 85 °C
6 = industrial: device tested with standard test flow over –40 to 85 °C
(No parameter for SG12I)
Option
T = Tape and reel packing
(No parameter for SG12I)
Capacitance
/2 = 25 pF
1. Package for automotive grade.
2. SG12I is only available for voltage range “G”.
Note:
86/90
Parts marked as “ES”, “E” or accompanied by an Engineering Sample notification letter, are
not yet qualified and therefore not yet ready to be used in production and any consequences
deriving from such usage will not be at ST charge. In no event, ST will be liable for any
customer usage of these engineering samples in production. ST Quality has to be contacted
prior to any decision to use these Engineering samples to run qualification activity.
DocID024754 Rev 15
M24SR04-Y M24SR04-G
17
Revision history
Revision history
Table 90. Document revision history
Date
Revision
13-Jun-2013
1
Initial release.
2
Added UFDFPN8 drawing on page 1.
Edited Section 2.6: RF disable.
Updated ICC0 parameter in Table 77: I2C DC characteristics and added a note.
Added Section 15.3: UFDFPN8 package information and UFDFPN8 package.
28-Oct-2013
3
Updated the Capacitance value to 25 pF.
Removed all “Battery assisted” and “Wire power management” information (conditioned
for a future use).
Moved GetI2Csession command before Section 5.10.2: KillRFsession command.
Added 2 new sections: Section 7.4: I²C token release sequence and Section 7.5: I²C
timeout on clock period.
Removed “DID field” information from Section 7.9: I²C frame format and from Table 69
to Table 71 .
Updated different values in Table 73: Absolute maximum ratings, Table 74: I2C
operating conditions, Table 77: I2C DC characteristics, Table 78: I2C AC characteristics
(400 kHz), Table 79: I2C AC characteristics (1 MHz), and Table 84: RF characteristics,
and removed all “(forecast data)” from the table titles.
Moved RF characteristics table before Table 84: RF characteristics, deleted footnote (1)
and updated footnote (2).
Fully edited.
08-Nov-2013
4
Added a note to Section 7.1: I2C communication protocol below Figure 12: Command
and response exchange.
5
Changed the datasheet status from “Preliminary data” to “Production data”.
Restored the whole content of Table 77: I2C DC characteristics.
Updated the capacitor values in Section 2.5.1: Operating supply voltage VCC.
Removed bullet (4) from Section 8.6: Reaching the read-only state for an NDEF file.
Updated VESD value in Table 73: Absolute maximum ratings, ICC values in Table 77:
I2C DC characteristics, and H_Extended value in Table 84: RF characteristics.
Added details to “S(WTX)” bullet in Section 5.4: S-Block format.
Added sentences to Section 5.6.8: UpdateBinary command and to Section 5.8.3:
DisablePermanentState command.
Changed ‘0x001E’ value into ‘0x001F’ in Table 56: StateControl command format.
Updated values in Table 61: ATS response.
Added Note (4) to Figure 10: Changing the read access right to an NDEF file and
Figure 11: Changing the write access right to an NDEF file.
29-Aug-2013
18-Dec-2013
Changes
DocID024754 Rev 15
87/90
89
Revision history
M24SR04-Y M24SR04-G
Table 90. Document revision history (continued)
Date
26-Feb-2014
11-Jun-2014
20-Nov-2014
20-Aug-2015
88/90
Revision
Changes
6
Updated Figure 5: GPO configured as I2C answer ready (GPO field = 0xX3) and
Figure 8: GPO configured as State Control (GPO field = 0xX5 or 0x5X).
Added I2C text to the Note below Table 22: S-Block detailed format.
Edited the third paragraph of Section 5.8.1: ExtendedReadBinary command.
Added Section 5.8.4: UpdateFileType command and Section 8.8: Changing a File
type Procedure.
Updated bullet 3 in Section 7.9: I²C frame format, and the Payload row of Table 70: I2C
host to M24SR04. Updated bullet 2 in Section 7.11: Close the I²C session.
Edited VIO row and removed VESD (machine model) row from Table 73: Absolute
maximum ratings.
Updated ICC rows and added a Note to Table 77: I2C DC characteristics.
Updated Figure 20: SO8N - 8-lead plastic small outline, 150 mils body width, package
outline.
Fixed a typo in Figure 23: UFDFPN8 - 8-lead, 2 x 3 mm, 0.5 mm pitch ultra thin profile
fine pitch dual flat package outline title: UFDPFN8 changed into UFDFPN8.
7
Added data for automotive grade in Table 6: Field list and Table 72: UID format
Added WFDFPN8 package for automotive grade under qualification
Added Figure 24: WFDFPN8 (MLP8) 8-lead, 2 x 3 mm, 0.5 mm pitch very thin fine pitch
dual flat package outline
Added WFDFPN8 package for automotive grade under qualification
Added Table 88: WFDFPN8 8-lead thin fine pitch dual flat package no lead mechanical
data
Added MF = WFDFPN8 inside Table 89: Ordering information scheme for packaged
devices
Inserted byte <04> between A4 and 00 inside Figure 14: NDEF tag Application
Select command
8
Added:
– New Root Part Number on cover page
– single supply voltage for I2C for grade G and note (1)
Updated:
– Figure 14
– Figure 73,Figure 74, Figure 77, Figure 78, Figure 83, Figure 89
9
Added
– Figure 21: SO8N - 8-lead plastic small outline, 150 mils bosy width, package
recommended footprint
Updated
– Section 15: Package information
– Table 73: Absolute maximum ratings
– Table 74: I2C operating conditions
– Table 78: I2C AC characteristics (400 kHz)
– Table 89: Ordering information scheme for packaged devices
DocID024754 Rev 15
M24SR04-Y M24SR04-G
Revision history
Table 90. Document revision history (continued)
Date
04-Mar-2016
27-Apr-2016
14-Oct-2016
18-Nov-2016
07-Feb-2017
08-Feb-2017
Revision
Changes
10
Updated:
– Features
– Section 2.7.6: State Control configuration (GPO field = 0xX5 or 0x5X)
Added:
– Table 7: Details about I2C watchdog
– Table 82: Write cycle definition
11
Updated:
– Features
– Table 73: Absolute maximum ratings
– Table 82: Write cycle definition
Added:
– Section 13: Write cycle definition
12
Updated:
– Section 3.2.2: Changing the read access right to NDEF files
– Section 3.2.3: Changing the write access right to NDEF files
– Section 5.6.5: NDEF Select command
– Section 5.8.4: UpdateFileType command
– Section 5.8.5: SendInterrupt command
– Section 8.2: Reading of an NDEF message
– Section 8.5: Unlocking an NDEF file
– Section 8.6: Reaching the read-only state for an NDEF file
– Section 16: Part numbering
Added:
– Section 8.9: Updating a NDEF file
13
Updated:
– Table 35: R-APDU of the ReadBinary command
– Table 47: R-APDU of the ExtendedReadBinary command
– Table 89: Ordering information scheme for packaged devices
14
Added:
– Note 4. on Figure 23.: UFDFPN8 - 8-lead, 2 x 3 mm, 0.5 mm pitch ultra thin profile
fine pitch dual flat package outline
Updated:
– Table 89: Ordering information scheme for packaged devices
15
Package SB12I replaced with SG12I.
Updated:
– Table 73: Absolute maximum ratings
– Table 89: Ordering information scheme for packaged devices
DocID024754 Rev 15
89/90
89
M24SR04-Y M24SR04-G
IMPORTANT NOTICE – PLEASE READ CAREFULLY
STMicroelectronics NV and its subsidiaries (“ST”) reserve the right to make changes, corrections, enhancements, modifications, and
improvements to ST products and/or to this document at any time without notice. Purchasers should obtain the latest relevant information on
ST products before placing orders. ST products are sold pursuant to ST’s terms and conditions of sale in place at the time of order
acknowledgement.
Purchasers are solely responsible for the choice, selection, and use of ST products and ST assumes no liability for application assistance or
the design of Purchasers’ products.
No license, express or implied, to any intellectual property right is granted by ST herein.
Resale of ST products with provisions different from the information set forth herein shall void any warranty granted by ST for such product.
ST and the ST logo are trademarks of ST. All other product or service names are the property of their respective owners.
Information in this document supersedes and replaces information previously supplied in any prior versions of this document.
© 2017 STMicroelectronics – All rights reserved
90/90
DocID024754 Rev 15
Similar pages