The PN7150 is a full features NFC controller for contactless communication at
13.56 MHz.
The User Manual describes the software interfaces (API), based on the NFC FORUM
standard, NCI.
Note: this document includes cross-references, which can be used to directly access the
section/chapter referenced in the text. These cross-references are indicated by the
following sign: ‘→’. This sign is positioned right before the section/chapter reference. The
way to jump to the referenced section/chapter depends on the file format:
•In the word format, you have to first press the key “Ctrl” on the key board and then
to click on the section/chapter reference number pointed by the ‘→’ sign. The
mouse symbol changes to a small hand when it is positioned on the
section/chapter reference number.
•In .pdf format, you only have to click on the section/chapter reference number
pointed by the ‘→’ sign : the mouse symbol automatically changes to a small hand
when it is positioned on the section/chapter reference number
As this document assumes pre-knowledge on certain technologies please check section
→16: References to find the appropriate documentation.
For further information please refer to the PN7150 data sheet [PN7150_DS].
Page 4
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
The PN7150 is an NFC Controller, which is briefly described in Fig 1:
•The top part describes the Device Host (DH) architecture with Higher Layer Driver
(e.g. Android stack) hosting the different kind of applications (Reader/Writer, Peer
to Peer, Card Emulation in the DH-NFCEE), the NCI driver & the transport layer
driver.
•The PN7150 is the NFCC in the Fig 1. It is connected to the DH through a physical
interface which is an I²C. The PN7150 firmware supports the NCI specification but
also provides support for additional extensions that are not contained in the NCI
specification. These additional extensions are specific to the PN7150 chip and are
proprietary to NXP.
•The bottom part of the figure contains the RF antenna connected to the PN7150,
which can communicate over RF with a Tag (Card) and a Reader/Writer or a Peer
device.
Page 5
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
The PN7150 firmware is able to combine the basic modes of operation described above,
using the RF Discovery as defined in [NCI]. As the PN7150 offers more features than what
[NCI] addressed, NXP has defined some proprietary extensions.
The principle used to combine the various modes of operation is to build a cyclic activity
which will sequentially activate various modes of operation. This cyclic activity is called the
polling loop. This loop alternates listening phase (NFCC behaves as card or target) and
polling phase (NFCC behaves as a reader/writer or an initiator). A cycle of the polling loop
is called RF discovery sequence; it is made of 3 steps:
1. Start a Polling phase to look for a remote Tag/Card or a remote Target. If several
technologies are enabled by the DH, PN7150 will poll sequentially for all the
enabled technologies.
2. If no card or tag or target was detected, PN7150 enters a Listening phase, to
potentially be activated as a Card / Tag emulator or a P2P target by an external
Reader/Writer or external Initiator.
3. If no device to interact is detected during polling phase (step 1) or listening phase
(step 2), then after a programmable timeout, PN7150 switches back to polling
phase (step 1).
A combination of the 3 different steps defines a polling loop profile.
The RF discovery sequence is usually drawn as below (here applied for the NFC forum
polling loop profile where technologies NFC-A, NFC-B & NFC-F are activated in Poll
Mode):
Page 9
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 6. Power consumption during RF discovery sequence (NFC forum profile)
Please note that when the PN7150 is in Poll phase, it consumes a significant amount of
current: in the range of 30mA (depending on the antenna characteristics). This applies at
least for the 3 polled technologies drawn on the Fig 5, above (NFC-A, NFC-B and NFC_F)
and it is due to the fact that the PN7150 has to generate the RF carrier (13.56MHz).
However, during the Listen phase, the PN7150 current consumption is reduced to around
20µA when standby mode is enabled, due to the fact that it is waiting for the detection of
an externally generated RF carrier.
Here is a figure illustrating a RF Discovery sequence, where polling is enabled only for
NFC-A & NFC-B, for simplicity:
In a typical set-up, the polling phase is approximately 20ms long while the listening phase
is usually in the range 300ms to 500ms long (this is configured thanks to the NCI parameter
called TOTAL_DURATION).
For 500ms this gives an average power consumption of:
[30x20 + 0.02x500] / 520 = 1.17mA.
This average consumption can even be further optimized, using the PN7150 feature called
“Tag Detector”. See chapter →10.4 for more details.
See chapter →10 for further details on the RF discovery activity.
Page 10
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
The aim of this section is to give an overview of the key points of the [NCI] specification.
3.1 NCI Components
Here below are described the NCI component as defined in [NCI] which are located in the
NFCC embedded FW.
3.1.1 NCI Modules
NCI modules are built on top of the functionality provided by the NCI Core. Each module
provides a well-defined functionality to the DH. NCI modules provide the functionality to
configure the NFCC and to discover and communicate with Remote NFC Endpoints (see
[NCI] for definition) or with DH-NFCEEs.
Some NCI modules are mandatory parts of an NCI implementation, others are optional.
There can also be dependencies between NCI modules in the sense that a module may
only be useful if there are other modules implemented as well. For example all modules
that deal with communication with a Remote NFC Endpoint (the RF Interface modules)
depend on the RF Discovery to be present.
3.1.2 NCI Core
The NCI Core defines the basic functionality of the communication between a Device Host
(DH) and an NFC Controller (NFCC). This enables Control Message (Command,
Response and Notification) and Data Message exchange between an NFCC and a DH.
Page 11
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Transport Mappings define how the NCI messaging is mapped to an underlying NCI
Transport, which is a physical connection (and optional associated protocol) between the
DH and the NFCC. Each Transport Mapping is associated with a specific NCI Transport
(see [NCI] for definition).
3.2 NCI Concepts
This chapter outlines the basic concepts used in [NCI].
3.2.1 Control Messages
A DH uses NCI Control Messages to control and configure an NFCC. Control Messages
consist of Commands, Responses and Notifications. Commands are only allowed to be
sent in the direction from DH to NFCC, Responses and Notifications are only allowed in
the other direction. Control Messages are transmitted in NCI Control Packets, NCI
supports segmentation of Control Messages into multiple Packets.
The NCI Core defines a basic set of Control Messages, e.g. for setting and retrieving of
NFCC configuration parameters. NCI Modules can define additional Control Messages.
Page 12
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Data Messages are used to transport data to either a Remote NFC Endpoint (named RF
Communication in NCI) or to an NFCEE (named NFCEE Communication). NCI defines
Data Packets enabling the segmentation of Data Messages into multiple Packets.
Data Messages can only be exchanged in the context of a Logical Connection. As a result,
a Logical Connection must be established before any Data Messages can be sent. One
Logical Connection, the Static RF Connection, is always established during initialization of
NCI. The Static RF Connection is dedicated to be used for RF Communication. Additional
Logical Connections can be created for RF and/or NFCEE Communication.
Logical Connections provide flow control for Data Messages in the direction from DH to
NFCC.
3.2.3 Interfaces
An NCI Module may contain one Interface. An Interface defines how a DH can
communicate via NCI with a Remote NFC Endpoint or NFCEE. Each Interface is defined
Page 13
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
to support specific protocols and can only be used for those protocols (the majority of
Interfaces support exactly one protocol). NCI defines two types of Interfaces: RF Interfaces
and NFCEE Interfaces.
Protocols used to communicate with a Remote NFC Endpoint are called RF Protocols.
Protocols used to communicate with an NFCEE are called NFCEE Protocols.
An NFCEE Interface has a one-to-one relationship to an NFCEE Protocol, whereas there
might be multiple RF Interfaces for one RF Protocol. The later allows NCI to support
different splits of the protocol implementation between the NFCC and DH. An NCI
implementation on an NFCC should include those RF Interfaces that match the
functionality implemented on the NFCC.
Interfaces must be activated before they can be used and they must be deactivated when
they are no longer used.
An Interface can define its own configuration parameters and Control Messages, but most
importantly it must define how the payload of a Data Message maps to the payload of the
respective RF or NFCEE Protocol and, in case of RF Communication, whether the Static
RF Connection is used to exchange those Data Messages between the DH and the NFCC.
3.2.4 RF Communication
RF Communication is started by configuring and running the polling loop (RF discovery
sequences in loops). The RF discovery sequence involved the NCI module called RF
discovery. This module discovers and enumerates Remote NFC Endpoints.
For each Remote NFC Endpoint, the RF Discovery module provides the DH with the
information about the Remote NFC Endpoint gathered during the RF Discovery sequence.
One part of this information is the RF Protocol that is used to communicate with the Remote
NFC Endpoint. During RF Discovery module configuration, the DH must configure a
mapping that associates an RF Interface for each RF Protocol. If only a single Remote
NFC Endpoint is detected during one discovery sequence, the RF Interface for this
Endpoint is automatically activated. If there are multiple Remote NFC Endpoints detected
during the Poll phase, the DH can select the Endpoint it wants to communicate with. This
selection also triggers the activation of the mapped Interface.
After an RF Interface has been activated, the DH can communicate with the Remote NFC
Endpoint using the activated RF Interface. An activated RF Interface can be deactivated
by either the DH or the NFCC (e.g. on behalf of the Remote NFC Endpoint). However each
RF Interface can define which of those methods are allowed. Depending on which part of
the protocol stack is executed on the DH there are different deactivation options. For
example if a protocol command to tear down the communication is handled on the DH, the
DH will deactivate the RF Interface. If such a command is handled on the NFCC, the NFCC
will deactivate the Interface.
This specification describes the possible Control Message sequences for RF
Communication in the form of a state machine.
Page 14
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
The DH can learn about the NFCEEs connected to the NFCC by using the NFCEE
Discovery module. During NFCEE Discovery the NFCC assigns an identifier for each
NFCEE. When the DH wants to communicate with an NFCEE, it needs to open a Logical
Connection to the NFCEE using the corresponding identifier and specifying the NFCEE
Protocol to be used.
Opening a Logical Connection to an NFCEE automatically activates the NFCEE Interface
associated to the protocol specified. As there is always a one-to-one relationship between
an NFCEE Protocol and Interface, there is no mapping step required (different as for the
RF Communication).
After the Interface has been activated, the DH can communicate with the NFCEE using
the activated Interface.
Closing the connection to an NFCEE Interface deactivates that NFCEE Interface.
NCI also includes functionality to allow the DH to enable or disable the communication
between an NFCEE and the NFCC.
3.2.6 Identifiers
The NFCC might only be used by the DH but also by the NFCEEs in the device (in such a
case the NFCC is a shared resource). NFCEEs differ in the way they are connected to the
NFCC and the protocol used on such a link determines how an NFCEE can use the NFCC.
For example some protocols allow the NFCEE to provide its own configuration for RF
parameters to the NFCC (similar to the NCI Configuration Parameters for RF Discovery)
in other cases the NFCEE might not provide such information.
NFCCs can have different implementation in how they deal with multiple configurations
from DH and NFCEEs. They might for example switch between those configurations so
that only one is active at a time or they might attempt to merge the different configurations.
During initialization NCI provides information for the DH whether the configuration it
provides is the only one or if the NFCC supports configuration by NFCEEs as well.
NCI includes a module, called Listen Mode Routing, with which the DH can define where
to route received data when the device has been activated in Listen Mode. The Listen
Mode Routing allows the DH to maintain a routing table on the NFCC. Routing can be done
based on the technology or protocol of the incoming traffic or based on application
identifiers in case [7816-4] APDU commands are used on top of ISO-DEP.
In case of PN7150 the only route is the DH-NFCEE, therefore no Listen Mode Routing
programming supported.
In addition NCI enables the DH to get informed if communication between an NFCEE and
a Remote NFC Endpoint occurs.
Page 15
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Control Packet – Notification Message as a payload
100b-111b
RFU
PBF
Description
The Packet contains a complete Message, or the Packet contains the last segment
1b
The Packet contains a segment of a Message which is not the last segment.
3.3 NCI Packet Format
3.3.1 Common Packet Header
All Packets have a common header, consisting of an MT field and a PBF field:
Message Type (MT)
The MT field indicates the contents of the Packet and SHALL be a 3 bit field containing
one of the values listed in Table 1, below. The content of the Information field is dependent
on the value of the MT field. The receiver of an MT designated as RFU SHALL silently
discard the packet.
Table 1. MT values
Packet Boundary Flag (PBF)
The Packet Boundary Flag (PBF) is used for Segmentation and Reassembly and SHALL
be a 1 bit field containing one of the values listed in [NCI] specification.
Table 2. PBF Value
0b
of a segmented Message
The following rules apply to the PBF flag in Packets:
If the Packet contains a complete Message, the PBF SHALL be set to 0b.
If the Packet contains the last segment of a segmented Message, the PBF SHALL be
set to 0b.
If the packet does not contain the last segment of a segmented Message, the PBF
SHALL be set to 1b.
Page 16
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Each Control Packet SHALL have a 3 octet Packet Header and MAY have additional
payload for carrying a Control Message or a segment of Control Message.
NOTE In the case of an ‘empty’ Control Message, only the Packet Header is sent.
Message Type (MT)
Refer to section 3.3.1 for details of the MT field.
Packet Boundary Flag (PBF)
Refer to section 3.3.1 for details of the PBF field.
Group Identifier (GID)
The NCI supports Commands, Responses and Notifications which are categorized
according their individual groups. The Group Identifier (GID) indicates the categorization
of the message and SHALL be a 4 bit field containing one of the values listed in [NCI]
specification.
All GID values not defined in [NCI] specification are RFU.
Opcode Identifier (OID)
The Opcode Identifier (OID) indicates the identification of the Control Message and
SHALL be a 6 bit field which is a unique identification of a set of Command, Response or
Notification Messages within the group (GID). OID values are defined along with the
definition of the respective Control Messages described in [NCI] specification.
Payload Length (L)
The Payload Length SHALL indicate the number of octets present in the payload. The
Payload Length field SHALL be an 8 bit field containing a value from 0 to 255.
Page 17
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Each Data Packet SHALL have a 3 octet Packet Header and MAY have additional Payload
for carrying a Data Message or a segment of a Data Message.
NOTE: In the case of an ‘empty’ Data Message, only the Packet Header is sent.
Message Type (MT)
Refer to section 3.3.1 for details of the MT field.
Packet Boundary Flag (PBF)
Refer to section 3.3.1 for details of the PBF field.
Connection Identifier (Conn ID)
The Connection Identifier (Conn ID) SHALL be used to indicate the previously setup
Logical Connection to which this data belongs. The Conn ID is a 4 bit field containing a
value from 0 to 15.
Payload Length (L)
The Payload Length field indicates the number of Payload octets present. The Payload
Length field is an 8 bit field containing a value from 0 to 255
.
Page 18
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
The Segmentation and Reassembly functionality SHALL be supported by both the DH and
the NFCC.
Segmentation and Reassembly of Messages SHALL be performed independently for
Control Packets and Data Packets of each Logical Connection.
Any NCI Transport Mapping is allowed to define a fixed Maximum Transmission Unit (MTU)
size in octets. If such a Mapping is defined and used, then if either DH or NFCC needs to
transmit a Message (either Control or Data Message) that would generate a Packet
(including Packet Header) larger than the MTU, the Segmentation and Reassembly (SAR)
feature SHALL be used on the Message.
The following rules apply to segmenting Control Messages:
For each segment of a Control Message, the header of the Control Packet SHALL
contains the same MT, GID and OID values.
From DH to NFCC: the Segmentation and Reassembly feature SHALL be used when
sending a Command Message from the DH to the NFCC that would generate a Control
Packet with a payload larger than the “Max Control Packet Payload Size” reported by
the NFCC at initialization. Each segment of a Command Message except for the last
SHALL contain a payload with the length of “Max Control Packet Payload Size”.
From NFCC to DH: when an NFCC sends a Control Message to the DH, regardless
of the length, it MAY segment the Control Message into smaller Control Packets if
needed for internal optimization purposes.
The following rules apply to segmenting Data Messages:For each segment of a Data Message, the header of the Data Packet SHALL contain
the same MT and Conn ID.
From DH to NFCC: if a Data Message payload size exceeds the Max Data Packet
Payload Size, of the connection then the Segmentation and Reassembly feature
SHALL be used on the Data Message.
From NFCC to DH: when an NFCC sends a Data Message to the DH, regardless of
the payload length it MAY segment the Data Message into smaller Data Packets for
any internal reason, for example for transmission buffer optimization.
Page 19
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
NCI packets can be as long as 258 Bytes. If the DH I²C peripheral has a buffer
used at the I²C transport layer, as defined in →4.6.
Address Value
I2C_ADDR1 Pin
I2C_ADDR0 Pin
0x28 0 0
0x29 0 1
0x2A 1 0
0x2B 1 1
4. DH interface
4.1 Introduction
The I²C interface of the PN7150 is compliant with the I²C Bus Specification V3.0, including
device ID and Soft Reset. It is slave-only, i.e. the SCL signal is an input driven by the host.
The PN7150 I²C interface supports standard (up to 100kbps), fast-Speed mode (up to
400kbps) and High Speed mode (up to 3.4Mbit/s).
I²C defines two different modes of addressing (7-bit & 10-bit). The PN7150 only supports
the 7-bit addressing mode.
limitation which is below 258 Bytes, then a fragmentation mechanism SHALL be
!
The PN7150 I²C 7-bit address can be configured from 0x28 to 0x2B. The 2 least significant
bits of the slave address are electrically forced by pins I2C_ADR0 and I2C_ADDR1 of the
PN7150.
So, in binary format, the PN7150 slave 7-bit address is:
“0 1 0 1 0 I2C_ADDR1 I2C_ADDR0”
Table 3. PN7150 I²C slave address
This can be easily configured through direct connection of pins I2C_ADDR0 and
I2C_ADDR1 to either GND or PVDD at PCB level.
4.2 NCI Transport Mapping
In the PN7150, there is no additional framing added for I²C: an NCI packet (either data or
control message, as defined in chapter →3.3) is transmitted over I²C “as is”, i.e. without
any additional Byte (no header, no CRC etc…).
4.3 Write Sequence from the DH
As the I²C clock is mastered by the DH, only the DH can initiate an I²C exchange.
A DH write sequence always starts with the sending of the PN7150 I²C Slave Address
followed by the write bit (logical ‘0’: 0b). Then the PN7150 I²C interface sends an I²C ACK
back to the DH for each data byte written by the DH.
Page 20
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
It may send an I²C NACK (negative acknowledge) when none of the buffers used by the
NCI core in the PN7150 is free, which may happen in case PN7150 is in standby mode. If
one single byte of a complete NCI frame is NACKed by the PN7150, the DH has to resend the complete NCI frame and not only this single byte.
It may happen that PN7150 has an NCI Message ready to be sent to the DH while
it is receiving another NCI Message from the DH. In such a condition, the IRQ pin
will be raised somewhere during the Write Sequence: this is not an error and has
!
to be accepted by the DH: once the Write Sequence is completed, the DH has to
start a Read Sequence (see →4.4).
4.4 Read Sequence from the DH
The DH shall never initiate a spontaneous I²C read request. The DH shall wait until it is
triggered by the PN7150.
To trigger the DH, the PN7150 generates a logical transition from Low to High on its IRQ
pin (if the IRQ pin is configured to be active High; see configuration chapter →11.1). So
after writing any NCI command, the DH shall wait until the PN7150 raises its IRQ pin.
The DH can then transmit a Read request to fetch the NCI answer from the PN7150. When
the PN7150 needs to send a spontaneous notification to the DH (for instance an RF
Interface activation notification), the PN7150 raises the IRQ pin and the DH performs a
normal read as described above.
A DH Read Sequence always starts by the sending of the PN7150 I²C Slave Address
followed by the read bit (logical ‘1’). Then the DH I²C interface sends an ACK back to the
PN7150 for each data Byte received.
Fig 15 is an example where the IRQ is raised so the DH can proceed a read.
Page 21
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
As indicated on Fig 15, in case the PN7150 requests a data transfer by raising the IRQ pin
and the DH tries to initiate a write sequence by positioning the write bit to 0b, the PN7150
keeps the IRQ active until the DH starts a read sequence.
The DH is not allowed to proceed with a write sequence once the PN7150 has set the IRQ
pin to its active value (logical ‘1’ in Fig 15).
If PN7150 has another message ready to be sent to the DH before the end of the on-going
Read Sequence, the IRQ pin will be first deactivated at the end of the on-going Read
Sequence and then re-activated to notify to the DH that a new message has to be read.
4.5 Spli t mode
The PN7150 supports the interruption of a frame transfer, as defined in [I²C]. This feature
is only available in Read Mode; it is forbidden to use it in Write Mode.
This can be useful in a system where the I²C bus is shared between several peripherals:
it allows the host to stop an on-going exchange, to switch to another peripheral (with a
different slave address) and then to resume the communication with the PN7150.
Another typical use-case for the split mode is to have the DH reading first the NCI packet
header, to know what the Payload length is. The DH can then allocate a buffer with an
appropriate size and read the payload data to fill this buffer. This use-case is represented
on Fig 16:
4.6 Optional transport fragmentation
PN7150 comes with an optional transport fragmentation on I²C, which can be
enabled/disabled thanks to bit b4 in IRQ_POLARITY_CFG (see →11.1).
This fragmentation can only be used from the DH to the PN7150: there is no fragmentation
available from the PN7150 to the DH.
This fragmentation is purely implemented at the I²C transport layer and does not interfere
with NCI segmentation, which remains possible on top.
Page 22
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
The I²C fragmentation implemented on PN7150 requires that the DH waits until
it has received a Control Message of type Response in response to a Control
Message of type Command before it can send any Data Message.
!
The DH also has to wait until it has received a Credit Notification to release the
credit consumed by a previous Data Message it has sent, before it can send a
new Control Message of type Command.
4.6.1 Description of the I²C fragmentation:
If the DH has limited capabilities to transport Frames of Bytes over I²C (so below the
maximum frame size of an NCI packet which is equal to 258 Bytes), it SHALL send the
NCI packet into several fragments, according to the following rules:
• The fragment size has to be an integer multiple of 4 Bytes (excluding the Slave
Address Byte required by the I²C protocol).
• The minimum fragment size supported by the DH has to be long enough to transport
the following sequence of commands, which is necessary to enable the feature by
setting bit b4 in the IRQ_POLARITY_CFG parameter (see →11.1):
- CORE_RESET_CMD
- CORE_INIT_CMD
- NCI_PROPRIETARY_ACT_CMD
- CORE_SET_CONFIG_CMD
• To implement a flow control mechanism, the DH has to follow the following sequence:
1. The DH sends a first fragment of an NCI data packet.
2. The DH waits for WaitTime = 500µs
3. The DH writes the [Address & R/Wn] Byte over the I²C bus; it has then to
check the I²C ACK bit generated by PN7150 :
a. If the ACK bit is not set, this means that PN7150 is still processing
the previous fragment of the NCI packet and it is not yet ready to
receive the next fragment. The DH has to wait for an additional
WaitTime, moving back to step 2.
b. If the ACK bit is set, the DH can move to step 4.
4. The DH transmits the next Fragment
5. If the whole NCI packet has not yet been transmitted, the DH proceeds to
step 2 with another fragment. If the whole NCI packet has been transmitted,
the sequence is stopped.
Page 23
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
RF bit rates for Poll mode in techno NFC-A & NFC-B:
→8
Card Emulation ISO-DEP for NFC-A & NFC-B
→8
Card Emulation T3T for NFC-F
→9.1
P2P passive (Initiator & Target)
→9.2
P2P active (Initiator & Target)
→11
Configuration: Power management, RF Settings, Clocking schemes
→12
Testing: Antenna self-test, PRBS test
5. Compliance to [NCI] and PN71 50 extensions
The PN7150 is a complex contactless System on Chip, which offers a lot of features.
Unfortunately, [NCI] as defined by the NFC FORUM does not give full access to all these
features. Therefore, NXP had to extend [NCI] with proprietary extensions, and the PN7150
DH interface which includes [NCI] plus the PN7150 extensions is referenced in the present
document as [PN7150-NCI].
So, the following terms are used in the present user Manual with the detailed meaning
hereafter:
[NCI]: NCI 1.0 as defined in NFCForum-TS-NCI-1.0.pdf available on the NFC
FORUM web site.
[PN7150-NCI]: [NCI] + NXP proprietary extensions for the PN7150, in order to allow
full access to all the features it offers. NXP tried to use [NCI] as much as possible and to
limit the proprietary extensions.
5.1 Feature-based comparison of [NCI] and [PN7150-NCI]
The table below represents the features overview of the PN7150. It highlights the main
differences between the NCI standard ([NCI]) and [PN7150-NCI]. The Chapter column
contains shortcuts to the section in the document where the feature is described in details.
Table 4. Features overview
212kbps, 424kbps & 848kbps
Partially Covered Covered Not Covered
5.2 [NCI] Imple m entation in the PN7150
[NCI] defines several features which are optional or configurable. For instance, data
exchange can use an optional flow control, for which the number of credits is defined by
the NFCC. So the intent of this section is to describe those features in [NCI] which are
optional or configured by the NFCC, to highlight how they are implemented in the PN7150.
Page 27
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Here is a simplified overview of an NFC Device as defined in the NFC FORUM:
Logical connections are used to transport data between the DH and the NFCC. Although
optional in [NCI], [PN7150-NCI] implements data flow control based on credits
management. In order to minimize the required buffer/memory size, the number of credits is limited to 1 on each logical connection.
The “Max Logical Connections” parameter reported in CORE_INIT_RSP equals 0x01 for
[PN7150-NCI]. That means that when the DH needs to create a new logical connection, it
has first to close the currently opened one, if any.
Here is an overview of the logical connections & credits available in the PN7150:
Page 28
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
PN7150 comes with a Maximum Control Packet Payload Size of 255 Bytes, as
reported in the CORE_INIT_RSP. Since [NCI] defines that the maximum size
of a Control Message is also 255 Bytes and that the DH has to completely fill
!
a Control Packet when sending a long Control Message, Segmentation and
Reassembly cannot be used by the DH with PN7150.
5.2.3 Compliance to [NCI] RF Interfaces
Here is a drawing of the RF interfaces available in [NCI]:
This section details the status on the different RF interfaces supported by the PN7150.
Table 7. NCI Interface limitations
1
Frame RF Interface is not supported for P2P Passive & Active modes
Page 30
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Even if set for more, the total duration is limited to
CON_DEVICE_LIMIT
Partial Support
[ACTIVITY]
0x03
Parameter is Read Only, Value is set to 3, except
PA_BAIL_OUT
No Support
[ACTIVITY]
-
Bail Out is always activated in Poll/NFC-A
PB_AFI
Full support
[DIGITAL]
0x00 PB_BAIL_OUT
No Support
[ACTIVITY]
-
Bail Out is always activated in Poll/NFC-B
PB_ATTRIB_PARAM1
Full support
[DIGITAL]
0x00
PB_SENSB_REQ_
No Support
[DIGITAL]
-
No support of advanced features in NFC-B, no
PF_BIT_RATE
Full support
[DIGITAL]
0x01 (212kbps)
PF_RC_CODE
Full support
[DIGITAL]
0x00
!! the NCI mechanism to force the parameter to
PB_H_INFO
Full support
[DIGITAL]
empty
PI_BIT_RATE
Full support
[DIGITAL]
0x00 (106kbps)
PN_NFC_DEP_SPEED
Full support
[DIGITAL]
0x00 (106kbps)
PN_ATR_REQ_GEN_BYTES
Full support
[DIGITAL]
empty
PN_ATR_REQ_CONFIG
Full support
[DIGITAL]
0x30 LA_BIT_FRAME_SDD
Full support
[DIGITAL]
0x01 LA_PLATFORM_CONFIG
Full support
[DIGITAL]
0x00
LA_SEL_INFO
Full support
[DIGITAL]
0x00
Warning! This value has to be changed to
LA_NFCID1
Full support
[DIGITAL]
0x08000000
LB_SENSB_INFO
Full support
[DIGITAL]
0x81 LB_NFCID0
Full support
[DIGITAL]
0x08000000
5.2.4 Compliance to [NCI] RF Discovery
[NCI] relies on the [ACTIVITY] specification defined by the NFC FORUM.
Since the P2P ACTIVE is not yet included in [ACTIVITY], the corresponding configuration
parameters are mentioned as “RFU” in [NCI]. Since the PN7150 supports the P2P ACTIVE
mode for both Initiator and Target roles, these parameters are actually used in [PN7150NCI].
5.2.5 Compliance to [NCI] configuration parameters
[NCI] defines a set of configuration parameters, in [NCI_Table8] (see chapter →16). Most
of them are supported by PN7150; however, a subset of these parameters is not
supported.
Here is a status for all these parameters, together with their default value in PN7150:
PARAM
Table 8. Compliance to [NCI] configuration parameters
from
2.57s
for ISO15693 where it is limited to 2 VICCs
support of the extended SENSB_RES.
come back to its default value
(CORE_SET_CONFIG with empty value) does
not work for PF_RC_CODE !!
emulate a card in DH with ISO-DEP/NFC-A
Page 31
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Consequence: the "Higher Layer Response" field
LI_BIT_RATE
Full support
[DIGITAL]
0x00 (106kbps)
LN_ATR_RES_CONFIG
Full support
[DIGITAL]
0x30
RF_FIELD_INFO
Full support
[NCI]
0x00
NFCC_CONFIG_CONTROL
Full support
[NCI]
0x00
IDENTIFIERS_5..16
from
LF_T3T_PMM_DEFAULT
000000000FFFFF
FFFFFFFFFFF
FFFFF
LI_FWI Full support [DIGITAL] 0x04
LA_HIST_BY Full support [DIGITAL] empty
LN_WT Full support [DIGITAL] 0x08
LN_ATR_RES_GEN_BYTES Full support [DIGITAL] Empty
RF_NFCEE_ACTION Full support [NCI] 0x01
NFCDEP_OP Full support [NCI] 0x0F
5.2.6 Compliance to [NCI] data messages
PN7150 is fully compliant to the [NCI] data messages.
5.3 Extensions to [NCI] allowing full control of PN7150
The [PN7150-NCI] extensions section gives a quick overview of the numerous extensions
required to [NCI] to give full access to all the features available in the PN7150.
in the ATTRIB Response is left empty
5.3.1 [PN7150-NCI] ext. to [NCI] RF Protocols
PN7150 supports much more protocols than handled today by [NCI].
It is required to extend the [NCI_Table5] defined in [NCI] (see chapter →16) such that
these protocols can be configured in various commands/notifications:
Page 32
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
5.3.2 [PN7150-NCI] ext. to [NCI] Bit Rates in ISO15693 and NFC-F
PN7150 supports the Poll Mode for technology ISO15693. Unfortunately, [NCI] does not
define an appropriate bit rate (26kbps) the NFCC has to report to the DH in the
RF_INTF_ACTIVATED_NTF. NXP has defined a proprietary value for this bit rate.
PN7150 offers the possibility to poll for NFC-F @ 212 kbps and NFC-F @ 424 kbps.
Unfortunately, [NCI] only allows configuring one of these 2 bit rates, but not both in the
same discovery sequence.
The [NCI] parameter used to configure the bit rate in NFC-F is PF_BIT_RATE. By setting
PF_BIT_RATE to the value of 0x81 “NFC_BIT_RATE_212 AND NFC_BIT_RATE_424”,
polling is done for both 212 and 424k in the same discovery sequence.
Table 10. Proprietary Bit rates
5.3.3 [PN7150-NCI] ext. to [NCI] RF Interfaces
PN7150 offers some features which are not accessible using the currently defined RF
interfaces in [NCI].
So the [NCI_Table6] (see chapter →16) needs to be extended with some proprietary RF
interfaces, as described in the table below:
Table 11. RF Interfaces extension
payload, in order to encode commands such as:
- T2T/MFUL sector select command
- MIFARE Classic Authenticate command
5.3.4 [PN7150-NCI] ext. to [NCI] Control messages
This section contains all the additional commands/notifications in [PN7150-NCI].
Page 33
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
over RF at different baud rates in order to
verify the contactless part without any
presence of the antenna components on
[NCI] defines some rules which constraint the use of the control messages. That means
that depending on the state the NCI RF State Machine is in, depending on the RF Interface
used, depending on some parameters, the control messages are valid or incorrect, and
sometimes they trigger state transitions.
NXP has extended these rules for the [PN7150-NCI] extensions.
The following table gives an overview of these rules:
Page 34
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
PN7150 defines additional states to the RF state machine defined in [NCI_Chap2], to
ensure a correct implementation of the “atomic behavior” of the pair of commands made
by CORE_RESET_CMD & CORE_INIT_CMD and also to correctly handle wrong RF
protocol to RF interface mapping through the RF_DISCOVER_MAP_CMD. The drawing
below illustrates these additional states, linked to the [NCI]-defined RFST_IDLE:
Page 37
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Parameters allowing the DH to configure the System: Clock
MIFARE Classic Keys handling…
→11.2
RF Discovery
Parameters allowing the DH to configure the Discovery
FORUM, NFC FORUM+ and EMVCo etc…).
→11.3
Contactless Front-End
Parameters allowing the DH to configure all internal HW
settings in the Contactless InterFace (CIF).
Payload
Field
Length
Description
Value of the configuration parameter.
5.3.5 [PN7150-NCI] ext. to [NCI] Configuration parameters
[NCI] lists a number of parameters, which are necessary to set up the RF discovery. But
the PN7150 requires a lot more parameters, for instance to configure some RF protocols
which are not supported by [NCI], to configure the power & clock management etc…
Here is a list of sets of parameters, sorted out by features to configure:
Table 13. Overview of additional Configuration parameters
5.3.6 [PN7150-NCI] ext. to [NCI] proprietary parameters space
[NCI] defines a parameter space with a size of 255 parameters, in which around 100 tags
are allocated for proprietary parameters:
Table 14. Parameter space
Parameters space sub-sections Tag
Assigned & reserved for NCI 1.0 0x00-0x9F
Reserved for Proprietary Use 0xA0-0xFE
RFU (Reserved for Extension) 0xFF
Regarding the PN7150 needs, this reserved area is not sufficient. To extend this space,
the solution chosen is to define a space of Tags coded on 16 bits, instead of 8 bits.
These extended Tags will always start by the value 0xA0, which is the first value available
in the Proprietary range.
This allows adding 256 new parameters.
Remark: If this is not sufficient in the future, we might use 16-bit tag values starting by
0xA1, 0xA2 etc…
Table 15. Extended TLV for proprietary parameters
m+3 Octets
This is illustrated by the following picture:
Tag = 0xA0XX 2 Octet Extended tag identifier.
Len 1 Octet The length of Val (m).
Val m Octets
Page 38
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
5.3.8 [PN7150-NCI] ext. to [NCI] Reason Code in CORE_RESET_NTF
[NCI] defines a set of standard Reason Codes in the CORE_RESET_NTF. Please refer to
[NCI_Table9] (see chapter →16).
NXP has extended this set of reason codes with the following value:
Table 17. Proprietary Reason Codes in CORE_RESET_NTF
0xA0 An assert has triggered PN7150 reset/reboot
0xA1 An over temperature has triggered the reset of PN7150
When Proprietary Reason Code is used, the CORE_RESET_NTF is out of [NCI]
compliance. Indeed, PN7150 appends one parameter at the end of the
CORE_RESET_NTF, to provide some information for debug purposes. The
CORE_RESET_NTF format is then:
Table 18. CORE_RESET_NTF when reason code = 0xA0 is used
Page 39
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Reserved for Proprietary Technologies in Poll Mode
5.3.9 [PN7150-NCI] ext. to [NCI] RF Technology & Mode
PN7150 supports more RF Technology & Mode parameters than handled today by [NCI].
It is required to extend the [NCI_Table3] defined in [NCI] (see chapter →16) such that
these RF Technology & Mode parameters can be used in RF_DISCOVER_CMD:
[NCI] defines a Reset/Initialization sequence, which is based on two different commands:
CORE_RESET_CMD
CORE_INIT_CMD
These two commands have to be called by the DH in an “atomic” way: there cannot be any
other command in-between and the PN7150 operation cannot start any operation
(Reader/Writer, Card Emulation, P2P, Combined modes etc…) if it does not first receive
these 2 commands.
[NCI] defines 2 modes for the Reset command: Keep Configuration & Reset Configuration.
Here is the detail of the difference between the 2 reset modes:
Table 20. Comparison of the 2 Reset Modes
Features
Configuration
Configuration
PN7150 may delay the CORE_RESET_RSP
If the DH sends a CORE_RESET_CMD while PN7150 has already indicated that it has
some data available to be read by the DH (IRQ pin activated), the DH has first to read the
data available from PN7150 before it can get the CORE_RESET_RSP. The reason is that
the NCI output buffer in PN7150 needs to be flushed before PN7150 can apply a Reset
and then send the CORE_RESET_RSP.
6.2 Manufac turer Specific Information in [NCI] CORE_INIT_RSP
The NCI command CORE_INIT_RSP contains a field “Manufacturer Specific Information”
with 4 bytes.
Here are the values of these 4 Bytes:
Table 21. Manufacturer specific information in CORE_INIT_RSP
Page 41
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 26. Initialization sequence to prepare the PN7150 operation (Keep Configuration)
6.3 Whole sequence to prepare the PN7150 operation
After the Reset/Initialization sequence is passed, the PN7150 requires several other steps
before it is ready to start operating as a Reader/Writer, Card Emulator etc…
The simplest case is when the DH issues a CORE_RESET_CMD with Reset Type = Keep
Configuration.
On this figure,
Green background means mandatory exchange
Now, here is the figure which lists the complete sequence, starting by a Reset Command
based on Reset Type = Reset Configuration. Since the entire configuration is lost, the
PN7150 needs to be reconfigured and various optional steps are added, which might be
needed or not, depending on the use case.
On this figure,
Green background means mandatory exchange
Blue background means optional exchange, depending on the use case.
Page 42
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Optional: if default RF parameters need to be modifed
Optional: if Protocol to RF Interface default mapping does not fit
Optional: if system includes some NFCEEs
Reset / Init Sequence (atomic, cannot be split)
DH
NFCC
CORE_INIT_CMD
CORE_INIT_RSP
CORE_RESET_CMD
(Reset Type = Reset Configuration)
RF_DISCOVER_MAP_CMD
RF_DISCOVER_MAP_RSP
CORE_SET_CONFIG_CMD
CORE_SET_CONFIG_RSP
RF_SET_LISTEN_MODE_ROUTING_CMD
RF_SET_LISTEN_MODE_ROUTING_RSP
CORE_RESET_RSP
NFCEE_DISCOVER_CMD
NFCEE_DISCOVER_RSP
RF_DISCOVER_CMD
RF_NFCEE_DISCOVERY_REQ_NTF
RF_NFCEE_DISCOVERY_REQ_NTF
Activate NXP proprietary extensions
NCI_PROPRIETARY_ACT_CMD
NFCEE_DISCOVER_NTF
RF_DISCOVER_RSP
NCI_PROPRIETARY_ACT_RSP
Fig 27. Initialization sequence to prepare the PN7150 operation (Reset configuration)
6.4 Propri etary command to enable proprietary extensions
It is visible on the previous flow chart that NXP has introduced a proprietary command sent
by the DH to enable the proprietary extensions to [NCI], which are available in the PN7150.
So, when the PN7150 receives this command NCI_PROPRIETARY_ACT_CMD, it knows
Page 43
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
DH informs the PN7150 that it knows the proprietary
Numbers of
1111b
0x02
2
PN7150 indicates that it understood the command.
Payload Field(s)
Length
Value/Description
STATUS
1 Octet
One of the following Status codes, as defined in [NCI_Table1]
0x00
STATUS_OK
0x03
STATUS_FAILED
Others
Forbidden
FW_Build_Number
4 Octets
NXP internal firmware build number
Command
Main Parameters
Values
RF Protocol
…
Mode
…
RF Interface
…
CORE_SET_CONFIG_CMD
Depends on technology & mode
…
RF_DISCOVER_CMD
RF Technology & Mode
…
that the DH is aware of the proprietary extensions and may therefore send proprietary
notifications (see the list in Table 12). If the PN7150 does not receive this proprietary
command, it knows that the DH do not understand proprietary extensions and will therefore
not send any proprietary notifications.
Here is the description of this command:
Table 22. NCI_PROPRIETARY_ACT_CMD
GID OID
Table 23. NCI_PROPRIETARY_ACT_RSP
GID OID
Table 24. NCI_PROPRIETARY_ACT_RSP parameters
parameter(s)
parameter(s)
Description
extensions.
Description
6.5 Configuration te m plate
In order to help the user of the PN7150 to issue the right configuration sequence for a
given mode of operation, the present document will detail a typical configuration sequence,
based on the following template:
Table 25. Template for a typical configuration sequence
RF_DISCOVER_MAP_CMD
6.6 PLL input Clock Management
The PN7150 is flexible in terms of clock sources. It can be either:
a 27.12MHz quartz
or a clean clock signal available on the platform on which PN7150 is connected.
A PLL inside PN7150 will convert this input clock signal into an internal 27.12MHz
used to generate the RF carrier. The input clock frequency has to be one of the
Page 44
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
To be selected when a 27.12MHz quartz is used as a clock source
PLL
To be selected when an input clock is provided to PN7150, with a frequency
Fig 28. CFG1: VBAT1 = VBAT2 = 2.3V to 5.5V
predefined set of input frequencies: 13MHz, 19.2MHz, 24MHz, 26MHz, 38.4MHz
and 52MHz.
The DH has to configure the parameter CLOCK_SEL_CFG (see chapter →11.1) to
configure what is the clock source as used in the current application.
Table 26. Clock sources supported
equal to either 13MHz, 19.2MHz, 24MHz, 26MHz, 38.4MHz or 52MHz
The same parameter (CLOCK_SEL_CFG) is used to configure which clock frequency is
used as an input to the PLL when this is the clock source in use.
In order to optimize system power consumption, it may be required to switch OFF the PLL
input clock when the PN7150 does not have to generate the 13.56MHz RF carrier or
download a new firmware.
A dedicated pin (CLKREQ) is used to inform the DH or a clock generating chip that the
PN7150 requires to get the PLL input clock, such that it can generate the 13.56MHz RF
carrier. PN7150 assumes that the PLL input clock is on and stable after a programmable
time-out, which is configured thanks to the parameter CLOCK_TO_CFG (see chapter
→11.1).
6.7 Transmitter voltage Configurations
The PN7150 supports 2 different configurations, called CFG1 and CFG2.
6.7.1 CFG1: Transmitter supply voltage from battery supply
In CFG 1 VBAT1 and VBAT2 are connected to the Battery and between 2.3V and 5.5V.
Page 45
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
This configuration is enabled by appropriate setting of PMU_CFG parameter. In addition
TVDDReqTime parameter shall be set to 0x00 (see configuration chapter →11.1).
6.7.2 CFG2: Transmitter supply voltage from external 5V supply
In CFG 2 VBAT1 is connected to 5V while VBAT2 is connected to the battery (delivering
between 2.3V and 5.5V). The internal TXLDO is used to generate a transmitter supply
voltage of 4.7V from the external 5V.
This configuration is enabled by appropriate setting of PMU_CFG parameter
configuration chapter →11.1)
.
(see
Page 46
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Note: all the Tags/Cards in this category are based on NFC-A technology, but they do not
support the ISO-DEP Protocol.
MIFARE Plus cards support the ISO-DEP protocol, but only when they are configured in
Security Level3, which is out of scope for this section.
7.1.1 Access through the [NCI] Frame RF Interface
[NCI] allows the data exchange with tags T1T, T2T using the Frame RF Interface.
Most of the commands of the MIFARE Classic & MIFARE Plus can also be mapped on the
Frame RF Interface, but NXP decided to use a separate RF interface (TAG-CMD, see
→7.1.2) because some MIFARE Classic commands are split in 2 steps (e.g. Authenticate
command) and have a tight response timeout (about 1ms) which can hardly be monitored
by the DH through the NFCC.
Here is a summary of the Tags/Card based on technology NFC-A which can be accessed
through the Frame RF interface
Table 27. Tag/Cards accessible over the [NCI] Frame RF Interface
Here are the commands and configuration parameters to prepare the Reader/Writer Mode
for T1T & T2T through the Frame RF Interface:
Table 28. Config. seq. for R/W of T1T or T2T through the Frame RF Intf
RF Protocol (choose between
RF_DISCOVER_MAP_CMD*
the 2 possible protocols)
* Note: RF_DISCOVER_MAP_CMD is optional since the mapping to Frame RF Intf. is done by default
* this parameter is not active in PN7150: it can be read/written, but PN7150 will always
behave with Bail Out in NFC-A, whatever the value written by the DH to that parameter.
Page 47
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
In addition to the incompatibility of the Frame RF Interface with the MIFARE Classic
Authenticate command described in the previous chapter, the intention when introducing
the TAG-CMD interface was to add some commands such as ReadN/WriteN which would
allow to read/write multiple bytes, and would rely on the NFCC to call several times the
basic read/write commands defined in the T1T, T2T or MIFARE Classic protocols.
Unfortunately, we had to withdraw this concept and the TAG-CMD as implemented in
PN7150 is limited to MIFARE Classic operation in Reader/Writer and T2T operation in
Reader/Writer when the Sector Select command is required.
The figure bellow represents the location of the TAG-CMD RF Interface:
7.1.3 [PN7150-NCI] extension: Payload structure of the TAG-CMD RF Interface
The TAG-CMD RF Interface is using the same data mapping as the one defined for the
[NCI] Frame RF Interface (see section 8.2.1 in [NCI]). However, for the TAG-CMD RF
Interface, the Payload is defined differently.
Two different structures are defined:
1. REQ (requests) : these are commands from the DH to the NFCC
2. RSP (responses): these are responses from the NFCC to the DH.
The diagram below details how the Payload is modified to insert a header, which carries
the REQ ID or the RSP ID and some parameters, if required.
Page 48
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 31. Data message payload for the TAG-CMD Interface
Value
Description
0x00
STATUS_OK
0x03
STATUS_FAILED
0xB0
RF_TRANSMISSION_ERROR
0xB1
RF_PROTOCOL_ERROR
0xB2
RF_TIMEOUT_ERROR
Others
Forbidden
Note: REQs and RSPs don’t share exactly the same structure:
REQs: Although illustrated with 2 parameters on the figure above, REQs may have no
parameters or only one. Some REQuests might also need parameters bigger than 1 Byte.
Parsing The REQ ID is the way to know how many parameters follow and how long they
are.
RSPs: there are no parameters in ReSPonses. A Byte is added at the end of the payload
(after the DATA field) to inform the DH on the RF status (to report RF errors if they were
some). The Status codes used are the following:
Table 29. TAG-CMD RF Status code
7.1.4 [PN7150-NCI] extension: REQs & RSPs rules
A REQ command is always going from DH to RF, through the NFCC.
A RSP response is always going from the RF to the DH, through the NFCC
The DH SHALL wait until it has received a RSP associated to a REQ before it can send a
new REQ.
7.1.5 [PN7150-NCI] extension: List of REQs & RSPs
In this section, the following acronyms are used:
Page 49
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
X 0 => use pre-loaded
X X X X Pre-loaded key number (0 to 15)
0 0 RFU
3
Embedded Key
6
N/A
This parameter is present in the MFC_Authenticate_CMD only if bit
Presence
0x40
MFC_Authenticate_RSP
No
DH gets the “authenticate” cmd status
Value
Description
Reason
0x00
STATUS_OK
Authentication was successful
0x03
STATUS_FAILED
Authentication failed (wrong key, time-out triggered during authentication etc…)
0xB0
RF_TRANSMISSION_ERROR
Not used
0xB1
RF_PROTOCOL_ERROR
Not used
0xB2
RF_TIMEOUT_ERROR
Not used
Others
Forbidden
Parameter
(optional)
(Byte)
Value Description
b4 is set to logical '1' in Key Selector parameter. If present, this
parameter defines the value of the Key used for the Authentication.
Table 39. MFC_Authenticate_RSP
RSP_ID RSP Name
of Data
Description
Table 40. TAG-CMD RF Status code, in the special case of MFC_Authenticate_CMD
key1 => use Key in param Nbr 3
Once a sector is authenticated, PN7150 will automatically encrypt any data sent by the DH
to be transferred over RF, thanks to the XCHG_DATA_REQ command.
The key used is the one used for the sector currently authenticated. In a symmetrical way,
PN7150 will automatically decrypt the data received from RF before it forwards to the DH
thanks to the XCHG_DATA_RSP response, again using the key of the sector currently
authenticated.
Fig 32 illustrates the use of the MFC_Authenticate_REQ & XCHG_DATA_REQ in a typical
MIFARE Classic reader sequence.
Page 52
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
The TAG-CMD RF interface allows full access to all the Tags based on NFC-A technology
and not supporting the ISO-DEP protocol, leaving up to the PN7150 to manage the low
level TAG-CMD:
Table 41. Tag/Cards accessible over the TAG-CMD Interface
Here are the commands and configuration parameters to prepare the Reader/Writer Mode
for T1T, T2T, and MIFARE Classic through the TAG-CMD Interface:
Table 42. Config. seq. for R/W of T1T, T2T & MFC through the TAG-CMD Interface
RF Protocol (choose between
RF_DISCOVER_MAP_CMD
1
this parameter is not active in PN7150: it can be read/written, but PN7150 will always
the 3 possible protocols)
behave with Bail Out in NFC-A, whatever the value written by the DH to that parameter.
7.2 T3T tag
[NCI] allows the data exchange with a tag T3T by using the Frame RF Interface, so there
is no need to add proprietary extensions here.
7.2.1 Access through the Frame RF Interface
Here are the commands and configuration parameters to prepare the Reader/Writer Mode
for T3T Tags/Cards through the Frame RF Interface:
Table 43. Config. seq. for R/W of T3T through the Frame RF Interface
RF_DISCOVER_MAP_CMD
Page 54
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
[NCI] allows the data exchange with a T4T tag or an ISO-DEP tag by using the Frame RF
Interface or the ISO-DEP RF Interface, so there is no need to define a proprietary RF
interface here.
7.3.1 Access through the Frame RF Interface
The Frame RF interface allows full access to all the Tags based on NFC-A & NFC-B
technology and supporting the ISO-DEP protocol, assuming that the ISO-DEP protocol is
fully handled by the DH:
Table 44. Tag/Cards accessible over the Frame RF Interface
Tag/Card
Frame RF Interface
Here are the commands and configuration parameters to prepare the Reader/Writer Mode
for ISO-DEP Tags/Cards through the Frame RF Interface for technology NFC-A:
Table 45. Config. seq. for R/W of NFC-A / ISO-DEP through the Frame RF interface
RF_DISCOVER_MAP_CMD *
* Note: RF_DISCOVER_MAP_CMD is optional since the mapping to Frame RF Intf. is done by default
1
this parameter is not active in PN7150: it can be read/written, but PN7150 will always
behave with Bail Out in NFC-A, whatever the value written by the DH to that parameter.
Here are the commands and configuration parameters to prepare the Reader/Writer Mode
for ISO-DEP Tags/Cards through the Frame RF Interface for technology NFC-B:
Table 46. Config. seq. for R/W of NFC-B / ISO-DEP through the Frame RF interface
Page 55
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
* Note: RF_DISCOVER_MAP_CMD is optional since the mapping to Frame RF Intf. is done by default
1
this parameter is not active in PN7150: it can be read/written, but PN7150 will always
behave with Bail Out in NFC-A, whatever the value written by the DH to that parameter.
2
this parameter is not supported in PN7150: STATUS_INVALID_PARAM will be returned
to the DH if it attempts to write this parameter.
7.3.2 Access through the ISO-DEP RF Interface
The ISO-DEP RF interface allows full access to all the Tags based on NFC-A & NFC-B
technology and supporting the ISO-DEP protocol, leaving up to the PN7150 to manage the
ISO-DEP protocol:
Table 47. Tag/Cards accessible over the ISO-DEP RF Interface
Tag/Card
Here are the commands and configuration parameters to prepare the Reader/Writer Mode
for ISO-DEP through the ISO-DEP Interface for technology NFC-A:
Table 48. Config. seq. for R/W of NFC-A / ISO-DEP through the ISO-DEP interface
RF_DISCOVER_MAP_CMD
DEP RF Interface
CORE_SET_CONFIG_CMD
1
this parameter is not active in PN7150: it can be read/written, but PN7150 will always
behave with Bail Out in NFC-A, whatever the value written by the DH to that parameter.
Page 56
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
When a Tag/Card has been activated in Poll Mode, the RF State Machine is then in state
RFST_POLL_ACTIVE. It is useful for the DH to know if the card is still in the field or not,
especially at the end of the transaction. For that purpose, NXP has added a proprietary
command to check the Tag/Card presence.
All the rules defined for command/response in [NCI] (section 3.2) apply to the command
defined here. Here are two additional rules:
The DH can use this command ONLY if the RF State Machine is in state
RFST_POLL_ACTIVE. PN7150 will respond “STATUS_SEMANTIC_ERROR” in
case this command is sent in any other state
The DH can use this command ONLY if the active protocol is either ISO-DEP or
NFC-DEP
Table 50. RF_PRES-CHECK_CMD
GID OID
parameter(s)
Description
Page 57
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
The NFCC acknowledges the command received from the DH.
Payload Field(s)
Length
Value/Description
STATUS
1 Octet
0x00
STATUS_OK
0x01
STATUS_REJECTED
0x06
STATUS_SEMANTIC_ERROR
Others
Forbidden
Numbers of
1111b
0x10
2
The NFCC sends the response S-Blocks S(PARAMETERS) to the DH.
Payload Field(s)
Length
Value/Description
ABT
N1 Octets
Response received on RF to the S-Block sent.
STATUS
0x00
STATUS_OK
0x02
STATUS_RF_FRAME_CORRUPTED
0xB0
RF_TRANSMISSION_ERROR
0xB1
RF_PROTOCOL_ERROR
0xB2
RF_TIMEOUT_ERROR
Others
Forbidden
Table 56. RF_T4T_SBLOCK_PARAM_CMD parameters
* PN7150 supports maximum 10 Bytes for ABI length
Table 57. RF_T4T_SBLOCK_PARAM_RSP
the payload only has to be provided (i.e. PARAMETERS),
NFCC will encapsulate it in an S-Block.
GID OID
parameter(s)
Description
Table 58. RF_T4T_SBLOCK_PARAM_RSP parameters
Table 59. RF_T4T_SBLOCK_PARAM_NTF
GID OID
parameter(s)
Table 60. RF_T4T_SBLOCK_PARAM_NTF parameters
Description
If there is no error on RF, the payload only is provided (i.e.
PARAMETERS), NFCC will extract it from the received S-Block.
If there is an RF error, this field is empty.
1
PN7150 supports maximum 10 Bytes for ABT length
7.3.5 [PN7150-NCI] extension: WTX notification
After data was sent to the card/tag, it can request an additional processing time before
sending data response. This is done with WTX (Waiting Time Extension) request. If WTX
Page 59
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Notification indicating that RF communication is in phase of WTX(RTOX) REQ/RESP
REQ/RESP exchange phase continues a NCI system notification WTX is sent with a period
configurable via READER_FWITOX_NTF_CFG.
Table 61. PH_NCI_OID_SYSTEM_WTX
GID OID
parameter(s)
Description
exchange for longer period of time.
7.3.6 [PN7150-NCI] extension: Higher bit rates in Poll NFC-A & NFC-B
[NCI] does not “officially” support the use of higher bit rates in technology NFC-A & NFCB.
PN7150 offers 4 different bit rates for these technologies, which can be used either in Poll
Mode (to read/write an external Card/Tag) or in Listen Mode (to emulate a card):
1. 106 kbps (default bit rate, always used during activation)
2. 212 kbps
3. 424 kbps
4. 848 kbps
Everything is prepared (see the RF configuration parameter PI_BIT_RATE), except for the
ISO-DEP RF Interface activation.
As currently defined in [NCI], the ISO-DEP RF interface activation for technology NFC-A
is incompatible with bit rates higher than 106kbps, since this requires to handle the PPS
commands exchange, which is not addressed in [NCI].
So the PN7150 implements an ISO-DEP RF Interface activation which is different from the
one described in [NCI_Chap1] (see chapter →16). Here is a copy of this chapter, where
the modification as implemented in the PN7150 is highlighted in red italic:
______________________ Copied from [NCI] ___________________________
8.3.2.2 Discovery and Interface Activation
To enable Poll Mode for ISO-DEP, the DH sends the RF_DISCOVER_CMD to the
PN7150 containing configurations with RF Technology and Mode values of
NFC_A_PASSIVE_POLL_MODE and/or NFC_B_PASSIVE_POLL_MODE.
When the PN7150 is ready to exchange data (that is, after receiving a response to the
protocol activation command from the Remote NFC Endpoint), it sends the
RF_INTF_ACTIVATED_NTF to the DH to indicate that this Interface has been
activated to be used with the specified Remote NFC Endpoint.
Detailed ISO-DEP RF Interface activation handling in the NFCC:
Page 60
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
For NFC-A:
Following the anticollision sequence, if the Remote NFC Endpoint supports ISO-DEP
Protocol, the NFCC sends the RATS Command to the Remote NFC Endpoint. And after
receiving the RATS response, the PN7150 MAY send the PPS command if PI_BIT_RATE
was set by the DH to an allowed value higher than 0x00. It SHALL then send the
RF_INTF_ACTIVATED_NTF to the DH to indicate a Remote NFC Endpoint based on
ISO-DEP has been activated. The RF_INTF_ACTIVATED_NTF will inform the DH on
the actual bit rate used on RF.
For NFC-A the RF_INTF_ACTIVATED_NTF SHALL include the Activation
Parameters defined in Table 74 (see below).
Table 74: Activation Parameters for NFC-A/ISO-DEP Poll Mode
Parameter Length Description
RATS Response Length 1 Octet Length of RATS Response Parameter (n)
RATS Response n Octets All Bytes of the RATS Response as defined in
[DIGITAL] starting from and including Byte 2.
______________________ End of Copy from [NCI] __________________________
7.4 [PN7150-NCI] extension: 15693 & I-Code tags
The current version of the NCI standard allows the data exchange with a tag ISO15693 by
using the RF Frame interface. No additional interface is needed for this protocol. However,
the data mapping is not yet defined in [NCI], therefore, NXP has defined it for [PN7150NCI].
7.4.1 Access through the Frame RF Interface
The Frame RF interface allows full access to all the Tags based on NFC-15693 technology.
Here is a list of such tags from the NXP portfolio:
Table 62. NFC-15693 compliant Tag/Cards accessible over the Frame RF Interface
Tag/Card
Here are the commands and configuration parameters to prepare the Reader/Writer Mode
for NFC-15693 Tags/Cards through the Frame RF Interface:
Frame RF Interface
Table 63. Config. seq. for R/W of NFC-15693 through the Frame RF Interface
RF_DISCOVER_MAP_CMD *
Page 61
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 33. Format for Frame RF Interface (NFC-15693) for Transmission
* Note: RF_DISCOVER_MAP_CMD is optional since the mapping to Frame RF Intf. is done by default
7.4.2 [PN7150-NCI] extension: Specific parameters for NFC_15693 Poll Mode
Once PN7150 detects and activates a remote NFC Endpoint based on NFC-15693,
PN7150 will activate the Frame RF Interface, providing the following activation parameters:
Table 64. Specific parameters for NFC_15693 Poll Mode
7.4.3 [PN7150-NCI] extension: Data Mapping between the DH and RF
Data from the DH to RF
The NCI Data Message corresponds to the Request Format defined in [ISO15693-3]
Section 7.3.
After receiving a Data Message from the DH, the PN7150 appends the appropriate EoD,
SOF and EOF and then sends the result in an RF Frame in NFC-15693 technology to the
Remote NFC Endpoint.
The following figure illustrates the mapping between the NCI Data Message Format and
the RF frame when sending the RF frame to the Remote NFC Endpoint. This figure shows
the case where NCI Segmentation and Reassembly feature is not used.
Although the Frame RF interface is defined to be a transparent interface where the NFCC
does not parse/modify the Bytes transmitted by the DH, the following exceptions occur:
PN7150 is parsing the bit Option Flag (bit b7 in the request Flags Byte, as
defined in ISO15693) to check if this bit is set by the DH or not. If set, this
!
indicates that the tag is from TI, and PN7150 is sending commands over RF
using a special mode, as defined for some commands in ISO15693.
Page 62
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 34. Format for Frame RF Interface (NFC-15693) for Reception
Data from RF to the DH
The NCI Data Message corresponds to the Payload of the Response Format defined in
[ISO15693-3] Section 7.4, followed by a Status field of 1 octet.
After receiving an RF frame, the PN7150 checks and removes the EoD, the SOF & EOF
and sends the result in a Data Message to the DH.
In case of an error the Data Message may consist of only a part of the Payload of the
received RF frame but it will always include the trailing Status field. So the PN7150 may
send a Data Message consisting of only the Status field if the whole RF frame is corrupted.
If the RF frame was received correctly, the PN7150 sets the Status field of Data Message
to a value of STATUS_OK. If the PN7150 detected an error when receiving the RF frame,
it sets the Status field of the Data Message to a value of
STATUS_RF_FRAME_CORRUPTED.
The following figure illustrates the mapping of the RF frame received from the Remote NFC
Endpoint in technology NFC-15693 to the Data Message format to be sent to the DH. This
figure shows the case where NCI Segmentation and Reassembly feature is not used.
7.4.4 PN7150 behavior with multiple VICCs
PN7150 supports collision resolution (using the Inventory command), so it can detect
multiple VICCs (2 maximum, as defined for CON_DEVICE_LIMIT in →5.2.5).
Here is the behavior when two VICCs are detected and then, one of them is removed from
the Field before the DH wants to select it:
• PN7150 is in state RFST_DISCOVERY; it detects 2 VICCs. It sends an
RF_DISCOVER_NTF to the DH for VICC1 and moves to
RFST_W4_ALL_DISCOVERIES.
• PN7150 is in state RFST_W4_ALL_DISCOVERIES, it sends an RF_DISCOVER_NTF
to the DH for VICC2 and moves to RFST_W4_HOST_SELECT.
• PN7150 is in state RFST_W4_ALL_DISCOVERIES and waits for the DH to select one
of the 2 VICCs. Once it receives the RF_DISCOVER_SELECT_CMD from the DH,
PN7150 immediately activates the Frame RF Interface and does not check if the selected
Page 63
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
VICC is still in the field. That means that PN7150 will not send a
CORE_GENERIC_ERROR_NTF (Discovery_Target_Activation_Failed) to the DH if the
selected VICC is not in the field anymore. The state is now changed to
RFST_POLL_ACTIVE.
• PN7150 is in state RFST_POLL_ACTIVE; it waits for the DH to send some data to
transfer over RF. Once it gets this data, PN7150 forwards it over RF. If the selected VICC
is not in the field anymore, PN7150 will stay mute and will not send any data back to the
DH. The DH has to implement a time-out function, to detect that the VICC is not in the
field anymore. Once this timeout is triggered, the DH can de-activate the Frame RF
Interface by sending the RF_DEACTIVATE_CMD.
7.5 [PN7150-NCI] extension: KOVIO tags
Kovio tags are very particular tags which use a sub-set of NFC-A technology.
The basic concept is that the tag is powered from RF Field generated by PN7150, and it
will spontaneously generate a 16-Byte ID using NFC-A load modulation, although it did not
receive any command from PN7150. Once PN7150 has detected a Kovio tag by capturing
its ID, PN7150 will send a RF_INTF_ACTIVATED_NTF, transporting the tag ID as RF
parameter.
Table 65. Kovio specific RF parameters inside the RF_INTF_ACTIVATED_NF
It is then up to the DH to decide when to leave the RFST_POLLING_ACTIVE state, and
also to decide if it directly comes back to RFST_DISCOVERY, where the same Kovio Tag
may be discovered again, or if it comes back to RFST_IDLE first, in order to wait without
any RF activity or re-configuring the RF Discovery so that PN7150 does not poll for a Kovio
tag again.
Kovio tags are accessed through the [NCI] Frame RF Interface.
Due to the very particular behavior of the Kovio tags, it is necessary to configure the RF
Discovery specifically for these tags, using the NFC-A_KOVIO_POLL_MODE parameter
for the RF_DISCOVER_CMD as highlighted in the table below:
Table 66. Config. seq. for R/W of Kovio tags through the Frame RF Intf
RF_DISCOVER_MAP_CMD*
Page 64
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
The PN7150 supports Card Emulation hosted by the DH based on either technology NFCA, NFC-B or NFC-F.
8.1 ISO-DEP card emulation through NFC-A & NFC-B
[NCI] defines all the mechanisms necessary to implement this feature. Two options are
possible:
1. The DH wants to manage by itself the ISO-DEP protocol; it SHALL
then map the ISO-DEP protocol on the Frame RF Interface.
Not supported in PN7150
2. The DH leaves the ISO-DEP protocol management to the NFCC: it
SHALL then map the ISO-DEP protocol on the ISO-DEP interface.
Here are the commands and configuration parameters to prepare the ISO-DEP Card
Emulation for technology NFC-A in the DH through the ISO-DEP RF Interface:
Table 67. Config. seq. for CE of ISO-DEP/NFC-A
RF_DISCOVER_MAP_CMD
CORE_SET_CONFIG_CMD
Here are the commands and configuration parameters to prepare the ISO-DEP Card
Emulation for technology NFC-B in the DH through the Frame RF Interface:
Table 68. Config. seq. for CE of ISO-DEP/NFC-B
RF_DISCOVER_MAP_CMD
CORE_SET_CONFIG_CMD
Page 66
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
0 – 16, defines the maximum amount of
Bytes 0 and 1 define the SC to be used by the T3T.
Command
Main Parameters
Values
RF Protocol
PROTOCOL_T3T
Mode
Listen
RF Interface
Frame
LF_T3T_MAX
LF_T3T_IDENTIFIERS_X
RF_DISCOVER_CMD
RF Technology & Mode
NFC_F_PASSIVE_LISTEN_MODE
1
this parameter is not active in PN7150: it can be read/written, but PN7150 will always
behave with empty Higher Layer – Response field in the ATTRIB response, whatever the
value written by the DH to that parameter.
8.2 T3T c ard emulation through NFC-F
8.2.1 Configuring the T3T card emulation
As described in the NFC specification, several Listen F parameters exist to set up T3T with
NCI commands.
Table 69. Values to configure the T3T on DH
LF_T3T_MAX 1 byte
LF_T3T_IDENTIFIERS_1 - 4 10 bytes
LF_T3T_IDENTIFIERS supported by the NFCC.
PN7150 supports four maximum.
Bytes 2 – 10 define the NFCID2 value to be used.
8.2.2 Access through the Frame RF Interface
The Frame RF interface allows emulating a T3T card, assuming that the DH is able to
manage the T3T protocol on its own.
Here are the commands and configuration parameters to prepare the T3T Card Emulation
for technology NFC-F through the Frame RF Interface:
Table 70. Configuration seq. for ISO-DEP/NFC-A Card Emulation in the DH over Frame RF
Interface
RF_DISCOVER_MAP_CMD *
CORE_SET_CONFIG_CMD
* Note : RF_DISCOVER_MAP_CMD is optional since the mapping to Frame RF Intf. is done by default
See above, used to set SC,
NFCID2
Page 67
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
[NCI] defines all the mechanisms necessary to implement this feature. Two options are
possible:
1. The DH wants to manage by itself the NFC-DEP protocol; it SHALL
then map the NFC-DEP protocol on the Frame RF Interface.
2. The DH leaves the NFC-DEP protocol management to the NFCC: it
SHALL then map the NFC-DEP protocol on the NFC-DEP interface.
The NFC-DEP RF interface allows the DH to emulate an NFC-DEP Target or Initiator in
P2P Passive, leaving up to the PN7150 to manage the NFC-DEP protocol.
Not supported in PN7150
Here are the commands and configuration parameters to prepare the NFC-DEP Target in
P2P Passive hosted by the DH, for technologies NFC-A and NFC-F, through the NFC-DEP
RF Interface:
Table 71. Config. seq. of NFC-DEP/NFC-A&F Passive Target over NFC-DEP RF Intf
RF_DISCOVER_MAP_CMD
CORE_SET_CONFIG_CMD
RF_DISCOVER_CMD
1
this parameter is not supported in PN7150
Here are the commands and configuration parameters to prepare the NFC-DEP Initiator
for technologies NFC-A and NFC-F in the DH through the Frame RF Interface:
Page 68
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Table 72. Config. seq. of NFC-DEP/NFC-A&F Passive Initiator over NFC-DEP RF Intf
RF_DISCOVER_MAP_CMD
CORE_SET_CONFIG_CMD
RF_DISCOVER_CMD
9.2 P2P Active mode
All P2P active modes are supported (Initiator for NFC-A & NFC-F and Target for NFC-A &
NFC-F).
As for the P2P Passive mode, the PN7150 allow access to P2P Active mode through the
NFC-DEP RF Interface, the Frame RF Interface implemented in PN7150 not supporting
the NFC-DEP protocol.
The NFC-DEP RF interface allows the DH to emulate an NFC-DEP Target or Initiator in
P2P Active, leaving up to the NFCC to manage the NFC-DEP protocol.
Here are the commands and configuration parameters to prepare the NFC-DEP Target in
P2P Active hosted by the DH, for technologies NFC-A and NFC-F, through the NFC-DEP
RF Interface:
Table 73. Config. seq. of NFC-DEP/NFC-A&F Active Target over NFC-DEP RF Intf
RF_DISCOVER_MAP_CMD
CORE_SET_CONFIG_CMD
Page 69
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Here are the commands and configuration parameters to prepare the NFC-DEP Initiator
for technologies NFC-A and NFC-F in the DH through the Frame RF Interface:
Table 74. Config. seq. of NFC-DEP/NFC-A&F Active Initiator over NFC-DEP RF Intf
RF_DISCOVER_MAP_CMD
CORE_SET_CONFIG_CMD
RF_DISCOVER_CMD
9.3 Presence check command
As already described in →7.3.3, the PN7150 comes with a proprietary function to allow the
DH knowing if the Tag/Card is still present or not. The command description in →7.3.3 also
applies in Initiator mode (Active or Passive).
9.4 WTX noti fication
As already described in →7.3.5, the PN7150 comes with a proprietary notification WTX
which indicates that peers are in phase of exchanging RTOX REQ/RESP (NFC DEP
equivalent of WTX in ISO DEP) for the configured period of time. The notification
description in →7.3.5 also applies in Initiator mode (Active or Passive).
Page 70
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
This contains the overall RF Discovery concepts applied in PN7150. [NCI] defines the
general RF state machine allowing the NFC controller to discover either cards or readers
or peers. This RF state machine contains a state called RFST_DISCOVERY where the RF
Discovery profile is applied.
In order to ensure standard compliance, the PN7150 supports 2 different RF discovery
profiles:
NFC FORUM profile: implementation of the NFC FORUM polling activity,
- Either limited to the current technologies defined in this standardization
body (NFC-A, NFC-B, NFC-F and P2P passive).
- Or extended with the additional technologies supported by PN7150, i.e.
P2P Active and ISO15693. PN7150 also offers the possibility to extend
this profile by polling for both NFC-F 424 and NFC-F 212.
EMVCo profile: mode allowing the PN7150 to be compliant to the EMVCo polling
activity.
In addition to these RF profiles, the PN7150 offers a way to limit the power consumption
by applying a tag detector concept. The tag detector can be seen as a precondition to
enable a dedicated profile. It means that if the tag detector is triggered, the default profile
is automatically started.
Note that [NCI] defines the TOTAL_DURATION of the discovery period independently of
the reader phases applied. To simplify the implementation, for the PN7150 it has been
decided to apply a timer only during the Listen/pause phase. So depending on the polling
phase configuration (1 technology or more), the total duration will vary a bit. This is
considered as acceptable and agreed by the NCI task Force in the NFC FORUM.
The following drawing shows the [PN7150-NCI] RF state machine. It differs from [NCI] only
by the additions in red.
Here are these additions:
A loop-back transition on state RFST_POLL_ACTIVE, corresponding to the
RF_PRES_CHECK_CMD which can be sent by the DH to know if the Card/PICC
is still in the field. See the command description in chapter →7.3.3.
A new status code used on the CORE_GENERIC_ERROR_NTF loop-back
transition on state RFST_DISCOVERY: this new status code is used when
PN7150 is configured to behave as an EMVCo PCD, and it detects collision. See
→10.5.1.2 for more details.
A new transition from RFST_POLL_ACTIVE to RFST_DISCOVERY: this
transition is triggered by PN7150, when it is configured to behave as an EMVCo
PCD and it detects that the RF communication with the PICC is broken. See
→10.5.1.2
Page 71
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
does not accept the RF_DEACTIVATE_CMD(Sleep Mode) or
Since the [NCI] RF State Machine is quite complex, it is presented slightly differently in
Annex A of the present document: the State Machine is drawn depending on the RF
interface to be used. See chapter →14 for further details.
!
Since PN7150 does not support Listen Mode using the Frame RF Interface, it
Page 72
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
RF_DEACTIVATE_CMD(Discovery) in RFST_LISTEN_ACTIVE or
NFC-F
NFC-A
NFC-B
Polling phase
Listening phase
Fig 36. RF Discovery sequence in case of NFC FORUM profile
RFST_LISTEN_SLEEP.
10.2 NFC FORUM Profi le as defined in [NCI]
The NFC FORUM profile is the implementation of the RF discovery activity as defined in
the NFC FORUM (see [ACTIVITY] specification). [NCI] only covers technologies NFC-A,
NFC-B & NFC-F. So the basic NFC FORUM profile will poll for these technologies only.
Furthermore, for NFC-F, only one bit rate is used during the polling phase. This is
configured thanks to the “Poll F parameter” PF_BIT_RATE as defined in [NCI], section
→6.1.4. So the DH configures if NFC-F is polled at 212kbps or at 424kbps, before it
activates the discovery by sending the RF_DISCOVER_CMD command.
The figure bellow represents the profile defined by the NFC FORUM, assuming that the
DH has enabled the 3 technologies currently supported by the NFC FORUM (NFC-A, NFCB, NFC-F) in Poll mode & Listen mode. To do so, it has to send the following command:
10.3 [PN7150-NCI] extension: additional technologies not yet supported by
the NFC FORUM
PN7150 supports more technologies than currently supported by the NFC FORUM
specifications: P2P Active, ISO15693 VCD and KOVIO Reader.
Furthermore, PN7150 offers an additional proprietary value for the configuration parameter
PF_BIT_RATE, which allows configuring for both 212 kbps & 424 kbps to be polled in NFCF in Passive Mode.
Thanks to the RF_DISCOVER_CMD and the PF_BIT_RATE, the DH has full flexibility to
extend the default RF Discovery profile as currently defined in the [NCI] specification. Here
is an example how the DH can enable all technologies available in PN7150, for both Poll
& Listen Mode:
1. The DH sets PF_BIT_RATE to 0x80, such that the PN7150 polls for 212 & 424
kbps in technology F PASSIVE.
CORE_SET_CONFIG_CMD( NbrParam = 0x01,
ID = 0x18,
Length = 0x01,
Val = 0x80 )
2. The DH enables all technologies & modes available in PN7150:
* NCI_DISCOVERY_TYPE_POLL_F_ACTIVE is not allowed, see →5.2.4.
The resulting RF discovery is drawn below (note that KOVIO does not have a specific Poll
Phase, since it is based on a Response only, as described in →7.5):
Page 74
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 37. RF Discovery sequence in case of NFC FORUM+ profile
Note: the transition from the Poll NFC-A Active phase to the Poll NFC-A (passive) is done
through an RF field off/on sequence.
For more details concerning the different phases duration, guard time, Bailout, please refer
to the configuration section (chapter →11.2) where all these parameters are defined.
10.4 [PN7150-NCI] extension: Low Power Card Detector (LPCD) Mode
10.4.1 Description
The Low Power Card Detector is an NXP proprietary extension, which can be used by the
DH to reduce the power consumption.
The concept is to avoid using the Technology Detection Activity as defined in [ACTIVITY],
which implies to generate an RF Field for several tens of milliseconds and to send
technology specific request commands to see if there is a Card/Tag in the field to respond.
The more technologies the PN7150 is configured to detect, the longer the RF Field is
generated and the higher the current consumption.
The LPCD is based on another concept, which only relies on the antenna characteristics,
not on valid responses from a Card/Tag. Indeed, the antenna impedance is influenced by
the Card/tag which may enter into its proximity, due to the magnetic coupling between the
Page 75
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 38. RF Discovery sequence in case of Low Power Card Detector mode
2 antennas. The LPCD is therefore monitoring the antenna impedance, to see if there is a
significant variation which is interpreted as being caused by a Card/Tag being in proximity.
To achieve that, the LPCD periodically generates very short pulses of RF Field, without
any modulation, and measures some antenna characteristics during this pulse. The time
between these RF pulses is defined by the TOTAL_DURATION parameter, as specified
for the RF Discovery in [NCI].
When a Card/Tag enters the field, there is an antenna impedance variation. If this variation
is higher than a pre-defined threshold, the NFC FORUM polling loop profile is automatically
started (the LPCD is not supported when using EMVCo polling loop profile). The PN7150
is then sending technology specific request commands, expecting a response since the
LPCD detected a change on the antenna impedance.
Note: the LPCD may also be triggered by a metal object, which can influence the Antenna
impedance in a similar way as a Card/Tag. The PN7150 will anyhow detect that this object
is not a contactless device since it immediately starts sending contactless commands to
check if a Card/Tag can respond.
The Low Power Card Detector is configured and enabled/disabled thanks to a specific
configuration parameter TAG_DETECTOR_CFG described in →11.2.1.
The threshold is also defined by an additional configuration parameter
TAG_DETECTOR_THRESHOLD_CFG described in the same section.
The figure below describes the RF Discovery when the LPCD is enabled:
Page 76
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
One complete RF Discovery Loop: Period = TOTAL_DURATION
Current
consumption
RF Field
~20 µA
~100µs
~300ms
Listen PhaseListen Phase
Listen
Phase
Current
consumption
One complete RF Discovery Loop: Period = TOTAL_DURATION
I
max
I
max
Poll Phase
Poll Phase
RF Discovery with LPCD disabled
, NFC-A & NFC-B only in Poll Mode
RF Discovery with LPCD enabled
Average Current Consumption
Average Current Consumption
t
t
t
t
Fig 39. Comparison of the RF Discovery with the LPCD disabled or enabled
The figure below compares the RF Discovery with the LPCD disabled to the RF Discovery
with the LPCD enabled and highlights the impact on the average current consumption (the
assumption being here that TOTAL_DURATION ~ 300ms):
A specific application note explains how to properly configure and optimize this LPCD in a
given application. See [AN 11757].
Page 77
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 40. Illustration of the Low Power Card detector and the subsequent Technology Detection cycles
10.4.2 Configuration of the Technology Detection Activity when the LPCD has
detected an "object"
As described in the previous chapter, once the PN7150 detects a change in the antenna
impedance, it performs a Technology Detection as defined in [ACTIVITY] which tries to
activate the “object” by sending Request Commands from the different technologies
configured for the RF Discovery.
In order to improve the likelihood to catch such a Card/Tag, the PN7150 comes with a retry
mechanism which performs several Technology Detection polling cycles before it switches
back to LPCD.
During this retry mechanism, a temporary period is used, called TechDet_PERIOD. This
is specified in steps of 10ms. The number of the retry cycles can also be configured thanks
to the TechDet_NBR_RETRIES parameter.
Table 75. Parameters used to configure the overall period of the RF Discovery:
Technology Detections
LPCD RF pulses
The next figure illustrates how these 3 parameters TOTAL_DURATION,
TechDet_PERIOD and TechDet_NBR_RETRIES influence the Low Power Card Detector
and the RF Discovery:
See →11.2.1 for the description of the configuration parameter
TechDet_AFTER_LPCD_CFG containing the 2 parameters TechDet_PERIOD and
TechDet_NBR_RETRIES.
10.4.3 Notification when the Trace Mode is enabled
The Low Power Card Detector needs to be tuned in each application; it is therefore useful
to get some information from PN7150 so that the Low Power Card Detector can be
appropriately configured.
Page 78
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
PN7150 sends the actual measurement + the threshold
Payload Field(s)
Length
Value/Description
Reference Value
2 Octets
Reference Value used by Low Power Card Detector function to
Measurement Value
2 Octets
Value measured on the AGC. Coding is little Endian.
The Low Power Card Detector can be configured to enable a Trace Mode, where the
following Notification will be sent to the DH by PN7150:
Table 76. RF_LPCD_TRACE_NTF
GID OID
10.5.1 EMVCo profile in Poll Mode
10.5.1.1 Configuring PN7150 to implement the EMVCo polling loop profile
parameter(s)
Table 77. RF_LPCD_TRACE_NTF parameters
Description
compare with the measurement value. Coding is little Endian.
10.5 [PN7150-NCI] extension: EMVCo Profile in Poll & Listen Modes
The EMVCo profiles are introduced in PN7150 for EMVCo compliancy. Indeed there are
incompatibilities between the RF Discovery activity as defined in the NFC FORUM and the
RF discovery defined in EMVCo standard.
To be compliant to the EMVCo certification tests, the RF Discovery has to be configured
so that only NFC-A and NFC-B are supported in Poll phase and so that there is no Listen
phase. So the DH has to send the following command:
In addition, PN7150 needs to be aware of the fact that it has to behave according to the
EMVCo RF discovery, not according to the NFC FORUM RF discovery based on
[ACTIVITY]. A specific configuration parameter POLL_PROFILE_SEL_CFG (see 11.2.1)
is defined for that purpose, allowing to select the active profile of the RF discovery in Poll
Mode. When this parameter is set to 0x01, PN7150 implements a specific discovery
algorithm, compliant to the EMVCo standard. The target is to ensure that there is one
single card in the field. So PN7150 has to detect any collision inside 1 technology (NFC-A
or NFC-B) or to detect if there are multiple cards based on different technologies (i.e. 1
card in NFC-A and 1 card in NFC-B).
Page 79
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 41. RF Discovery sequence in case of EMVCo profile
WUPAWUPB
No NFC-A Card
=> no response
No NFC-B Card
=> no response
WUPAWUPB
No NFC-A Card
=> no response
No NFC-B Card
=> no response
NFCC = PCD
Fig 42. EMVCo polling without a card in the field
If there is a card detected in the field, then the polling sequence is modified by the PN7150,
in order to look for another potential card in the field.
This is illustrated by the 2 figures below:
st
On the 1
one, there is no card in the RF Field, so PN7150 keeps polling by
alternating WUPA & WUPB commands.
On the 2
nd
one, an NFC-A card is placed in the RF Field. The PN7150 detects it,
activates it and puts it in HALT state and then looks for a potential NFC-B card in
the field. Since there is no NFC-B card in the field, the PN7150 activates the
NFC-A card again, then the PN7150 activates the ISO-DEP interface and the DH
can start to exchange data with the NFC-A card to proceed with the payment
application.
Page 80
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 43. EMVCo polling with NFC-A card in the field
EMVCo profile is enabled, since these 2 features are conflicting if
In PN7150 the Low Power Card Detector is automatically disabled when the
!
simultaneously enabled.
10.5.1.2 Notification for RF technology collision
When the EMVCo polling loop profile is activated, PN7150 will activate the ISO-DEP RF
Interface through RF_INTF_ACTIVATED_NTF only when there is 1 single card in the field,
whatever the technology (NFC-A or NFC-B).
When PN7150 detects a collision on RF (either in one technology or between
technologies), it will report a special Status in the CORE_GENERIC_ERROR_NTF:
STATUS_EMVCo_PCD_COLLISION. The current state will remain RFST_DISCOVERY,
as graphically described in Fig 35. The identifier of this proprietary Status is defined in
→5.3.7.Note that if the cards remain in the RF Field, PN7150 will keep sending the
CORE_GENERIC_ERROR_NTF with status STATUS_EMVCo_PCD_COLLISION at
each polling loop: this can be used as a presence check mechanism.
When the EMVCo profile for Poll Mode is activated and PN7150 has detected a single
PICC (i.e. no collision) but it is unable to properly activate this PICC, then PN7150 will
send a CORE_GENERIC_ERROR_NTFwith status
DISCOVERY_TARGET_ACTIVATION_FAILED as defined in [NCI].
10.5.1.3 Modification of the NCI RF State Machine in case of failure during data exchange
When the EMVCo profile for Poll Mode is activated, the PN7150 has to comply with tight
timings verified during the EMVCo PCD certification. In case the RF link with the PICC is
broken, the regular way to behave according to NCI is that the PN7150 will detect a timeout or an unrecoverable protocol error and send then a
CORE_INTERFACE_ERROR_NTF with the appropriate status. It is then up to the DH to
stop the RF Discovery with RF_DEACTIVATE_CMD(IDLE) and to restart the RF Discovery
with RF_DISCOVER_CMD. Unfortunately the time required to execute this sequence is
highly dependent on the DH latency and it is often not possible to match the timings
expected and checked by the EMVCo PCD certification.
Page 81
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
To solve this issue, NXP has decided to add a transition from the RFST_POLL_ACTIVE
to RFST_DISCOVERY, triggered by the sending of the
RF_DEACTIVATE_NTF(Discovery, Link Loss). In such a way, when PN7150 has detected
a timeout or an unrecoverable protocol error during the RF communication with the PICC,
it will autonomously come back to RFST_DISCOVERY, switching off the RF Field, as
requested by EMVCo and then restarting the Polling phase in a timely manner, as
requested by EVMCo.
This new transition is graphically described in Fig 35.
10.5.1.4 Deactivation procedures as requested by EMVCo 2.3.1 (or later)
Since the introduction of EMVCo PCD 2.3.1, two different deactivation procedures of the
card are required:
• Removal Procedure: already part of EMVCo PCD 2.2,
• Power off : introduced as new requirement in EMVCo PCD 2.3.1
The two deactivation procedures are exclusive, and the selection has to be done by the
PCD. So the DH has to configure PN7150 for one or the other behavior.
The way to select the EMVCo deactivation type is done via the proprietary configuration
parameter POLL_PROFILE_SEL_CFG (see →11.2.1).
NCI defines two different ways to deactivate a card when in RFST_POLL_ACTIVE: move
back to either the RFST_IDLE through the RF_DEACTIVATE_CMD(IDLE) or to the
RFST_DISCOVERY through the RF_DEACTIVATE_CMD(DISCOVERY).
The
POLL_PROFILE_SEL_CFG parameter comes therefore with 2 configuration bits, one for
each deactivation option defined in NCI:
• Bit 1 of POLL_PROFILE_SEL_CFG is linked to RF_DEACTIVATE_CMD(IDLE)
• Bit 2 of POLL_PROFILE_SEL_CFG is linked to
RF_DEACTIVATE_CMD(DISCOVERY)
For each bit (Bit 1 or Bit 2):
• If set to '0': the Removal procedure is used
• If set to '1': the Power OFF procedure is used
Table 78. Action in POLL_ACTIVE depending on POLL_PROFILE_SEL_CFG and NCI RF_DEACTIVATE_CMD
RFST_IDLE
then RFST_IDLE
DISCOVERY
DISCOVERY
Page 82
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Fig 44. EMVCo Listen with first NFC-A activated by the PCD then NFC-B activated, after field off/on sequence
10.5.2 EMVCo profile in Listen Mode
To be compliant to the EMVCo certification tests emulating an EMVCo PICC, PN7150 has
to behave as a single PICC based on either technology NFC-A or NFC-B.
In order to solve this issue, PN7150 comes with a specific configuration parameter:
LISTEN_PROFILE_SEL_CFG, detailed in section →11.2.2.
Thanks to this parameter, a specific EMVCo PICC profile can be activated such that
PN7150 will “hide” the non-yet-selected technology to the EMVCo PCD. Once this
parameter is activated, the PICC selection sequence is as follows (assuming NFC-A is
selected first):
•Once NFC-A has been selected by the PCD through the REQA command,
PN7150 disables the NFC-B card emulation so that the REQB command sent later
on by the EMVCo PCD gets no answer.
•The payment transaction can then successfully go through based on technology
NFC-A.
•PN7150 waits then for an RF Field off/on sequence before enabling the non-
selected technology (NFC-B) again.
10.6 [PN7150-NCI] extension: Power optimization
PN7150 offers a standby mode, which can be activated together with the RF Discovery,
such that the overall power consumption is significantly reduced.
One dedicated proprietary function is added to enable/disable this standby mode:
CORE_SET_POWER_MODE.
10.6.1 CORE_SET_POWER_MODE Command/Response
The Standby Mode is enabled by default. Given the very strong impact on the
power consumption, disabling the Standby Mode should be restricted to debug
!
sessions.
Page 83
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Command to request the PN7150 to enable/disable the Standby Mode
Payload Field(s)
Length
Value/Description
Mode
1 Octet
0x00
Standby Mode disabled
0x01
Standby Mode enabled
0x03-0xFF
RFU
Numbers of
1111b
0x00
1
Response to inform the DH of the status of the CORE_SET_POWER_MODE_CMD.
Payload Field(s)
Length
Value/Description
Status
1 Octet
0x00
STATUS_OK
0x06
STATUS_SEMANTIC_ERROR
0x09
STATUS_INVALID_PARAM
Others
Forbidden
Table 79. CORE_SET_POWER_MODE_CMD
GID OID
parameter(s)
Table 80. CORE_SET_POWER_MODE_CMD parameter
Description
Table 81. CORE_SET_POWER_MODE_RSP
GID OID
parameter(s)
Table 82. CORE_SET_POWER_MODE_RSP parameter
Description
10.6.2 Standby wake-up
The PN7150 wakes-up from standby when one of the following event occurs:
- Regular polling-loop starts. When the DH has served the PN7150 with a
NCI_RF_DISCOVER_CMD command, the PN7150 enters into the
standby mode and automatically leave the low power mode after the period
defined by TOTAL_DURATION.
- RF level detector triggered. An external field has been introduce in the
NFC volume during the standby period of the polling loop and at least one
listen phase has been requested by the NCI_DISCOVER_CMD.
- Host interface activity detected. See →4.3 section.
Page 84
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
Indicates how the clock is requested to the DH by the
0x00
Clock Request is disabled
0x01
Hardware-based Clock Request is enabled:
0x02-0xFF
RFU
0xA0 0x02
1
0x01
11. Configurations
!
!
When the DH needs to update the value of the parameters described
hereafter, it shall send a CORE_RESET_CMD/CORE_INIT_CMD sequence
after the CORE_SET_CONFIG_CMD, to ensure that the new value is used
for the parameters.
If numerous parameters are updated thanks to multiple
CORE_SET_CONFIG_CMD commands, a single CORE_RESET_CMD/
CORE_INIT_CMD sequence is enough after the last
CORE_SET_CONFIG_CMD.
Any CORE_SET_CONFIG_CMD to one of the following parameters or to the
[NCI] standard parameters will trigger an EEPROM write cycle. Since the
PN7150 EEPROM has a limited number of Erase/Write cycles (300 000), it is
highly recommended to only use the CORE_SET_CONFIG_CMD during the
NCI initialization sequence.
11.1 [PN7150-NCI] extension: System configurations
PN7150 offers several parameters used to configure the system aspects.
Table 83. Core configuration parameters
Name & Rights Description Ext. Tag Len.
RW in E²PROM
PN7150.
CLKREQ pin set to high when clock
requested, otherwise it is set to hi-Z (High
Impedance).
Value
Page 85
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
To Enable/Disable the Battery monitor & configure the
Bit Mask
Description
b0
X Vbat Monitor Enable
X Vbat Monitor Threshold
0 0 0 0 0 0 RFU
0xA0 0x06
1
0x00
VEN_CFG
Configures the internal VEN signal, in case the VEN pin driver
Bit Mask
Description
b7
b6
b5
b4
b3
b2
b1
b0
X
VEN_Value
X VEN_Pulld
0 0 0 0 0 0 RFU
0xA0 0x07
1
0x03
Name & Rights Description Ext. Tag Len.
RW in E²PROM
b7 b6 b5 b4 b3 b2 b1 b0
'1' => enabled,
'0'=> disabled
to logical ‘0’ (RFU)
b1=’0’ => PN7150 requests to transmit when IRQ pin = ’1’.
b1=’1’ => PN7150 requests to transmit when IRQ pin = ‘0’.
CFG
Threshold
RW in E²PROM
b7 b6 b5 b4 b3 b2 b1
b0: ‘1’ to Enable, ‘0’ to disable.
b1: ‘1’ to set the threshold to 2.3V and ‘0’ to set it to 2.75V.
Note: in NCI_RFST_DISCOVERY state, setting this parameter
will be rejected by the NFCC with an INVALID PARAM status
‘0x09’ instead of SEMANTIC ERROR status ‘0x06’.
Value
RW in E²PROM
is NOT supplied from PVDD. In such a case, when PVDD is
switched OFF, the VEN pin level in unknown, so the internal
VEN signal is defined by one bit in an internal register
(VEN_Value) while the VEN pin has to be pulled-down (to
avoid leakages) thanks to a 2nd bit in the same register
(VEN_Pulld) which has then to be set to '1' to activate the Pull
Down. These 2 bits can be configured through NCI thanks to
VEN_CFG LSbits, according to the following table:
Note, in order to force a certain VEN value to be used
internally (no matter which state the external VEN pin level is
in) the VEN_Pulld value HAS to be set. Only if VEN_Pulld is
set and PVDD is switched off the internal VEN state will be
forced to what is specified in VEN_Value.
Page 87
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
32-Byte EEPROM area dedicated to the DH to store/retrieve
0xA0 0x14
32
PLL_SETTINGS_CFG
Parameter used to configure the PLL:
Byte
Description
0
Delay between disable and enable
1
lock loop iterations
lock time for PLL2
3
lock time for PLL1 and PLL2
0xA0 0x1A
4
0xCD 67
DYN_LMA_SETTINGS_
Parameter used to Read/write the Configuration as well as
0xA0
68
See
Default
0 … 1
RFU 2 N/A
2
bLutSize: Size of LUT, DO NOT MODIFY this parameter
1
0x10
Name & Rights Description Ext. Tag Len.
RW in E²PROM
b7 b6 b5 b4 b3 b2 b1 b0
RW in E²PROM
non-volatile data. The 32 Bytes have to be read
(CORE_GET_CONFIG_CMD) or written
(CORE_SET_CONFIG_CMD) is a row: it is not possible to
access only a subset of these 32 Bytes.
RW in E²PROM
2
(PLL1 bypassed)
CFG
the Lookuptable for the dynamic LMA feature
0x92
Value
22 FF
Table 84
Table 84. DYN_LMA_SETTINGS_CFG Description
Bytes Description Len.
bNbLutEntries: Number of entries in DynLma look up table
. bits 0:3 = Number of Entries for Type A/B (0 means LMA disabled for this Type)
3
. bits 4:7 = Number of Entries for Type F (0 means LMA disabled for this Type)
1 0x00
The number of entries for Type A/B + Type F shall not exceed the Total number of Entries.
The Entries for TypeF follow the ones for Type A/B. This means if number of entries for
Key 10, used in MIFARE Classic Authentication command.
0xA0 0x57
6
0xFFFF
MFC_KEY-11_CFG
Key 11, used in MIFARE Classic Authentication command.
0xA0 0x58
6
0xFFFF
MFC_KEY-12_CFG
Key 12, used in MIFARE Classic Authentication command.
0xA0 0x59
6
0xFFFF
MFC_KEY-13_CFG
Key 13, used in MIFARE Classic Authentication command.
0xA0 0x5A
6
0xFFFF
MFC_KEY-14_CFG
Key 14, used in MIFARE Classic Authentication command.
0xA0 0x5B
6
0xFFFF
MFC_KEY-15_CFG
Key 15, used in MIFARE Classic Authentication command.
0x5C
6
0xFFFF
FSDI_CFG
Frame Size value for the PN7150 to display in RATS or
0x5D
1
0x08
JEWEL_RID_CFG
Parameter used to configure if the RID is sent on RF to the
0xA0 0x5E
1
0x00
FELICA_TSN_CFG
TSN value transported by the PN7150 in the SENSF_REQ
0x5F
1
0x00
TechDet_AFTER_LPCD_
Parameter used to configure the RF Discovery taking place
Bit Mask
Description
b7
b6
b5
b4
b3
b2
b1
b0
X X X X X TechDet_PERIOD
X X X TechDet_NBR_RETRIES
0x61
1
0x00
Name & Rights Description Ext. Tag Len.
0xA0
0xA0
WO1 in E²PROM
WO1 in E²PROM
WO1 in E²PROM
WO1 in E²PROM
WO1 in E²PROM
WO1 in E²PROM
RW in E²PROM
RW in E²PROM
ATTRIB.
T1T by PN7150 during the RF activation or not:
0x01 => The RID is sent on RF to the T1T
0x00 => The RID is NOT sent on RF to the T1T
In both cases, the RF_INTF_ACTIVATED_NTF will NOT
embed the RID response from the T1T, as defined in [NCI].
0xA0
RW in E²PROM
command: the DH defines the number of time slots for
collision resolution.
!! This value has to be set to 0x03 for NFC FORUM
compliance (DTA/Digital protocol tests) !!
CFG
RW in E²PROM
0xA0
right after the Low Power Card Detector has triggered a
detection:
Value
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
See →10.4.2 for more details on the use of this parameter.
1
WO (Write Only) parameters can only be written, using CORE_SET_CONFIG_CMD.
PN7150 will always return CORE_GET_CONFIG_RSP(STATUS_INVALID_PARAM) to
any attempt to read the value of the WO parameter.
In steps of 10ms
Page 93
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
PN7150 offers multiple configuration options for the Contactless Interface, to allow an
optimum match between the antenna characteristics and the transmitter and receiver in
PN7150.
A generic TLV mechanism has been defined to write the Contactless Interface settings. It
relies on the [NCI] CORE_SET_CONFIG_CMD and is described hereafter:
Table 87. Mechanism to configure the RF transitions:
Name & Rights Description Ext. Tag Len.
RW in E²PROM
•One transition will be coded as:
(TID)
1 Byte 1 Byte
(RO)
Value
(RV)
Page 94
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
The PN7150 has the ability to generate a continuous PRBS pattern on the RF interface.
Whatever the test command used by the DH, it is necessary to implement a "test session",
which isolates the test mode from a regular "NCI session" of PN7150. This test session is
defined thanks to the following sequence:
• Reset/Initialize the PN7150 using CORE_RESET_CMD/CORE_INIT_CMD
• Launch selected test function
• Get the response transporting executed test status
• Reset/ Initialize the PN7150 using CORE_RESET_CMD/CORE_INIT_CMD (except
for TEST_PRBS_CMD, which requires a HW reset first to stop the pattern generation
on RF).
12.2 TEST_PRBS_CMD/RSP
This command is used to start PRBS infinite stream generation:
Table 92. TEST_PRBS_CMD
GID OID
parameter(s)
Table 93. TEST_PRBS_CMD parameters
Description
Page 97
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.
PN7150 reports if the TEST_PRBS_CMD is successful or not.
Payload Field(s)
Length
Value/Description
STATUS
1 Octet
0x00
STATUS_OK
0x06
STATUS_SYNTAX_ERROR
0x09
STATUS_INVALID_PARAM
Others
Forbidden
Numbers of
1111b
0x3D
2-4
Command to execute antenna self-test measurements.
Payload Field(s)
Length
Value/Description
Measurement ID
1 Octet
0x01
TxLDO current measurement
0x02
AGC value reading
0x04
AGC value reading with fixed
0x08
AGC differential value with
0x20
Switch RF Field On/Off
0x03,
RFU
Parameters of
1-3
For individual test parameters please refer to →Table 98
Table 94. TEST_PRBS_RSP
GID OID
parameter(s)
Description
Table 95. TEST_PRBS_RSP parameters
The only way to stop the on-going PRBS pattern generation is to apply a HW
!
reset (through the VEN pin).
12.3 TEST_ANTENNA_CMD/RSP
This command is used to execute the antenna self-test measurements, which allow to
check that all the discrete components connected between PN7150 and the contactless
antenna are properly soldered on the PCB.
Four different measurements are necessary to check the correct connection of all the
discrete components, therefore a complete Antenna Self-Test requires to execute the
TEST_ANTENNA_CMD 4 consecutive times, with a different set of parameters for each
execution.
Table 96. TEST_ANTENNA_CMD
GID OID
parameter(s)
Description
Table 97. TEST_ANTENNA_CMD parameters
individual test
Octets
measurement
NFCLD level
open/short RM
0x05-0x07,
0x09-0x1F,
0x21-0xFF
Page 98
NXP Semiconductors
UM10936
PN7150 User Manual
UM10936
All information provided in this docum ent is subject to legal disclaimers.