Creating a partition on NTAG216 to use 215 data.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Creating a partition on NTAG216 to use 215 data.

5,457 Views
kingoftaurus
Contributor II

I have some data that I need to write to an NTAG215 card.

I am using a program not created by me to write the card that also uses encryption keys to encrypt the contents. Using 215 this works fine.

I have a need to use NTAG216 cards in place of the NTAG215 cards and I was given a basic explanation of how to do it here:

NFC tags can actually have multiple partitions (I'm sure most of us know). Make a separate (second) partition on the NTAG216 that is exactly 348 bytes, and fill it with dummy data (FF's, not 00's).

The program will then write the encrypted data to them as they were NTAG215's.

My problem is that I have found no information anywhere regarding creating any amounts of partitions on the NTAG216 or 215 for that matter.

If someone could give me an explanation of how to do this, I would be much appreciative. Thank you.

5 Replies

2,082 Views
claudioibarra
Contributor I

Sorry for bring the dead to life, but we are currently working in similar application.

Due a mistake we ended getting NTAG216 type cards, while the system uses NTAG215 cards. So we would like to know if it is possible to emulate the NTAG215 cards with the NTAG216 cards.

I told the manager the best option is to upgrade the access system, but he doesn't want to spend. Then someone suggested there could be an option to use the NTAG216 cards without changings the whole system.

Regards!

Claudio

0 Kudos

2,082 Views
Jorge_Gonzalez
NXP Employee
NXP Employee

Hello Edward Churchill:

Who provided you with the explanation? Did you mean 384 bytes? That is the difference in user memory from NTAG215 to NTAG216.

Creating a partition must be something related to your specific program. Both tag types are read and written with the same low level commands, the difference is the available user space and the page addresses for the dynamic lock bytes and configuration pages. See the details in Section 8.5 Memory organization in the datasheet:

http://cache.nxp.com/documents/data_sheet/NTAG213_215_216.pdf

So, you need to know more about the program itself or ask your colleague what he means by creating partitions. The specification for Type 2 tags is available directly from the NFC Forum page:

http://nfc-forum.org/product-category/specification/page/2/

Regards!

Jorge Gonzalez

0 Kudos

2,082 Views
kingoftaurus
Contributor II

Disregard those scans,

here are the correct ones.

On Mon, Mar 14, 2016 at 7:13 PM, Edward Churchill <kingoftaurus@gmail.com>

0 Kudos

2,082 Views
Jorge_Gonzalez
NXP Employee
NXP Employee

Hello Edward:

Thank you for sharing more details about your program. It is still confusing what you try to achieve and application specific but let me try to provide some pointers:

- If you want to replicate the same configuration from NTAG215 to NTAG216 you need to shift the configuration data and write it to page E2h instead of 82h.

- You might have a copy of configuration pages in NTAG216 at user data pages 82h to 86h, but this data will not have any effect on the actual tag configuration (locking, UID mirroring, etc).

- To fill the rest of the user memory with FF's in NTAG216 (from pages 87h to E1h) you need to use the WRITE command. The program (Android, Linux or PC app?) should have some API as a wrapper for this command.

It is strange that you want to "trick" the device. The correct approach would be to detect the tag type e.g. by reading the byte 2 of the Capability Container (memory size) or by using the GET_VERSION command and reading the byte 6 = storage size, then taking action according to the detected type.

Regards!

Jorge Gonzalez

2,082 Views
kingoftaurus
Contributor II

Hello, Jorge and thank you for your quick reply.

What I do know about the program is that it writes a tag that contains 540

bytes of encrypted data to the 215 card using two "keys" and then locks the

tag in specific sections.

The device that reads the card, reads, and expects to see the locked pages.

What I am attempting to do is trick the device into thinking that the data

is actually coming from a 215 tag, so that when it reaches the end of the

expected tag (the lock bytes and configuration data) it cannot "read" any

further from that point and basically can "see" no other data to read.

I also do know that there are other resources out there to help me, however

I am relatively new to using NFC communication and I am still in a learning

phase.

I have attached some examples of what is going on here, and perhaps with

your help you can explain to me the extra steps needed.

215 written is what the program writes successfully to a 215 card

216 written is what the program writes to a 216, but the device does not

read it.

Any further help would be appreciated.

On Mon, Mar 14, 2016 at 8:44 AM, Jorge_Gonzalez <

0 Kudos