1. General information

NFC Creation Studio is an easy-to-use tool for encoding NDEF content to NFC tags.

With the NFC Creation Studio -application, Feig CPR40.30 NFC-reader with License Key and a bunch of NFC tags you are ready to rock-and-roll.

NFC Creation Studio is supported by Microsoft Windows 7, Windows 8, and Windows 10.

The application can be loaded from Downloads - page.

1.1. Supported reader

Supported NFC-reader model: FEIG CPR40.30

The NFC Creation Studio -application is tested provably with FEIG CPR40.30 firmware version 3.09.

When the reader is connected to computer with USB connection cable and indicated by the application, this indicator will be shown on the top of the NFC Creation Studio -application.

1.2. Supported tag types

Tag type Writable memory Write protection Other information
Mifare Ultralight 45 bytes permanent -
Mifare Ultralight EV1 MFOUL11 45 bytes permanent / password
(8 hex characters)
-
Mifare Ultralight EV1 MFOUL21 125 bytes permanent / password
(8 hex characters)
-
Mifare 1K 714 bytes key
(12 hex characters) *
* always protected by key, it's possible to write to the tag without key, then application uses default key, that only works however if the key has not been changed
Mifare 4K 3356 bytes key
(12 hex characters) *
* always protected by key, it's possible to write to the tag without key, then application uses default key, that only works however if the key has not been changed
Mifare DESFire 4094 bytes* permanent with key
(32 hex characters) **
* even though Mifare DESFire 8k has more memory it is only possible to write NDEF message of this length to the tag
** permanent protection can be undoed by format desfire functionality
NTAG 203 141 bytes permanent -
NTAG 210 45 bytes permanent / password
(8 hex characters)
-
NTAG 212 125 bytes permanent / password
(8 hex characters)
-
NTAG 213 141 bytes permanent / password
(8 hex characters)
-
NTAG 215 501 bytes permanent / password
(8 hex characters)
-
NTAG 216 867 bytes permanent / password
(8 hex characters)
-

1.3. Installation

Installation package consist of application files and the core files that are needed for running the application. These core files consist of the driver for the reader, Microsoft .NET and Microsoft redistributables. Those files are installed in that order. When the driver has been installed the installer will ask to connect or reconnect the reader. It is very important to do so. If some of the core files are installed already, installer won't prompt to install them again.

The installation package for the application can be loaded from Downloads - page.

1.4. Application launch

The first launch of the application will have three steps in the beginning like that:

1. Connect reader

This view will show if the reader is not connected. When the reader is connected to the computer, it will take some time to establish the connection.



2. Getting things ready

During this phase application will load a configuration file for reader. It will be done every time the reader connection is established.



3. Give license key

The license key is reader-specific and needs to be set before using the application. The license key is sent as NFC card with the package or sent via email depending how you have bought the license key and the reader. Just set the License Key Card on the reader and the license key will appear on the License Key -textbox. License key for the reader is saved. Next time you connect your reader the license key is not anymore asked.



2. Single Tags

In this view tags can be read and be written. The view is splitted to two sections: (1) Current Tag and (2) Content Creation. The Current Tag -section shows the current information of the tag in the reader. The Content Creation -section gives you the tools to create and encode content for tags.

2.1. Current tag

The current tag -section shows the current information of the tag in the reader. The section has two states:

(1) Read tag -indication to indicate that the reader is waiting a tag to be read



(2) Tag information consisting of information of tag (UID, NFC Forum Type, Chip, Writable memory), tag content, tag write protection state and tag encoding status.




Write protection states:

No write protection
Write protection: permanent
Write protection: with password
Write protection: with key

Encoding statuses:

Encoding forbidden (tag has permanent write protection)
Ready for encoding
Encoded successfully
Encoding failed

Toolbar buttons:

- Read log -button starts and stops writing the information and content of the read tags to the log file.

- Open log -button opens the log folder. Read log filepath is C:\Users\Public\NFC Creation Studio\Logs\NFC_read\. Though the drive may be different than 'C:'.

- Clone -button will clone the tag content to the "content creation" section. There it can be edited or written again. This way it's also easy to clone tag content to another tags.

2.2. Content creation


Steps to start encoding tags:

1. Set a tag on the reader
2. Select a type for the content
3. Input the content data based on the selected type
4. Set write protection settings if needed
5. Start encoding tags either with Encode One -button or with Start Continuous Encoding -button*

*Check more info about encode one and continuous encoding -features later from this section.



NDEF content types:

Type Content
Smart poster Includes input fields: protocol, title and URI.

There is specific functionality for smart poster and URI that will detect if there is same protocol in the URI field and protocol field and remove it from the other. If protocol is selected and the same protocol is already written in the URI field it will be removed from there. Also if protocol is selected and the same protocol is typed in the URI then it will be removed from the protocol field.
URI Includes input fields: protocol and URI.

Look from the smart poster information about protocol functionality.
SMS Includes input fields: title, phone number and message.
Empty content Erases memory and adds empty NDEF message to the chip.
Text RTD Includes input field: text.
External RTD Includes input fields: RTD and payload.
Can be used e.g. to launch applications.
vCard There are two possibilities for encoding vCard. One is to load existing vCard and the other is to create new vCard.

New vCard can be created with the following content: contact name (compulsory), company, address, phone, mail and website.
Format DESFire Only available for DESFire tags. Erases memory of DESFire tag and initialize it so that it can be written again. If the tag is protected, the current key is required for formatting.
MIME Includes input fields: type and payload.
Phone call Includes input fields: name and phone number.

History of previous contents:

Ten latest unique contents that have been encoded are saved for the further use. Those can be selected from the history list.



Buttons in Content Data -section:

- Add UID -button adds '[uid]' text in the selected input field. When encoding, this text '[uid]' will be replaced with the real UID of the tag, which is encoded.

- Show Content -button opens the content fields in a separate popup view, where the fields can also be edited and saved.


Memory and content size indicators in Content Data -section:

- Writable memory shows in bytes how much memory the tag has.

- Content size shows in bytes how much memory current content will take. This value changes accordingly when the current content changes.

- Memory left shows in bytes how much memory the tag has left for the content. This will turn red if content size is greater than writable memory size. In that case encoding is also disabled.



Write protection features:

- Write protection has different states for different tag types when it is turned on.

- Permanent protection protects a tag permanently so that the tag cannot be written again. See from the supported tag types - section which tags can be permanently protected.

- Password protection protects a tag by 8 hex characters. Password protected tags can also be protected permanently, so there is a choice between password and permanent protection available. A tag, that has not yet been password protected, will only have a new password field available to be typed. A tag, that has been password protected, will have both current password and new password fields available. Password protected tag also automatically sets write protection on when it is read. See from the supported tag types section which tags can be protected by a password.

- Password protection removing can be done by turning off write protection when a password protected tag is in the reader. Then type the current password and encode the tag. New data can also be written to the tag while removing password protection.

- Mifare Classic 1K and 4K have key protection of 12 hex characters and are always protected by key. It's possible to write to the tag without key, then application uses default key, that only works however if the key has not been changed. When write protecting these tags, current key field could be left empty if the key has not been yet changed.

- Mifare DESFire has key protection of 32 hex characters. Write protecting DESFire tag protects the tag permanently. Permanent protection of Mifare DESFire can be undoed by format DESFire functionality. Format DESFire requires current key which has been used to protect the tag. When the formatting is done it is again possible to write to the tag.




Encode one:

- Encode one -button makes the write command to one tag with the selected content.

- If the writing was successfully done, the encoding status in Current tag -section will show "encoded successfully" -status.

- If the writing was unsuccessfully done, the encoding status in Current tag -section will show "encoding failed" -status. If the reason for the failure was due to write error, no additional information will be given. However there are few specific fail reasons ("wrong password", "password writing failed" and "multiple tags detected"), which are also shown in the status indication. In addition, when writing has failed, the encoding button will turn red and an error sound is played.


Continuous encoding:

- Start continuous encoding -button will allow writing the selected content continuously to as many tags as needed. It has a counter which shows how many tags have been written.

- Writing is restricted to the tag type that was written first. If tag type changes it will stop the continuous encoding and Current tag -section's encoding status will show "encoding failed - tag type changed".

- Continuous encoding will also stop if (1) content changes, (2) content type changes, (3) write protection status changes, (4) to creation button is clicked, (5) either read or encode log is started or (6) main view is changed to Tag batch.

- Continuous encoding also has the same specific fail reasons that are mentioned in the "Encode one" section. Continuous encoding button will also turn red if encoding fails.


Toolbar buttons:

- Encode log -button starts and stops writing the encoded content of the written tags to the log file.

- Open log -button opens the log folder. Encode log filepath is C:\Users\Public\NFC Creation Studio\Logs\NFC_write\. Though the drive may be different than 'C:'.


Examples of creating content:

- Example of creating email via smart poster:

1. Select as protocol "mailto:".
2. Set the title.
3. Set URI as follows "test@gmail.com?subject=Subject&body=Test message".*

*First part of URI consist of mail address, in this case "test@gmail.com". Second part is the subject. After "subject=" the subject can be set. Third part is the body. After "body=" the message can be set.

- Examples of launching android applications via external RTD:

* Launching chrome: Set RTD as android.com:pkg and payload as com.android.chrome
* Launching gmail: Set RTD as android.com:pkg and payload as com.google.android.gm
* Launching calendar: Set RTD as android.com:pkg and payload as com.google.android.calendar
* Launching file manager: Set RTD as android.com:pkg and payload as com.rhmsoft.fm
* Launching documents: Set RTD as android.com:pkg and payload as com.google.android.apps.docs

3. Tag Batch

In this view tags can be written from CSV-table. Tags should be written one by one.

3.1. Input


Steps to start encoding a tag batch:

1. Import a CSV file
2. Select a content type
3. Select content data fields*
4. Place the first tag on the reader
5. Set write protection settings if needed
6. Start encoding the tag batch

*All data fields are compulsory to be selected as headers for the input table


Format of the input file:

- Input file should be of a CSV type, where the cells of the file are separeted with semicolon ';' characters. The supported format of file is 'UTF-8 without BOM'. There can be more fields than three but only the three first fields are taken into account when the file is imported to the application.


Encoding functionalities:

- Tag batch works so that when it's started and a tag is detected on the reader, the first row of the table will be encoded to the tag. Then the second row from the input table is automatically selected and the content of it is encoded when a new tag is put on the reader.

- The position of the table to begin the encoding can be selected manually when the encoding is turned off.

- Encoding of the tag batch can fail due to a write error, which is shown as a general "encoding failed" -error message. There are also some specific error messages which are: "not enough memory for the content", "tag type changed", "wrong password given", "password writing failed", "multiple tags detected in the field" and "tag already encoded".

- A tag that has been already encoded in the tag batch cannot be written again during the encoding of the tag batch except if stopping and starting the encoding again.

- A tag type is set when you start writing the tag batch. If the tag type changes during encoding, error message will be shown. However tag type can be changed by stopping and starting the encoding again.

3.2. Output

Output of the encoding of the tag batch is shown in the output table. Always when encoding has succeeded, new row will be added to the output table. The output table can be easily copied by selecting the cells and tapping 'Ctrl - C' to copy the selected cells.

If the encoding fails, it will be shown as an error popup above the output table with an error sound. No new rows will be added to the output file if encoding fails.


Output log file:

- Output of the encoded tags are automatically saved to the output log file. Output log file is a CSV -formated file separeted with semicolon ';' -characters.

- Output log filepath is C:\Users\Public\NFC Creation Studio\TagBatchOutput\. Though the drive may be different than 'C:'.

- The log folder can be opened easily by clicking Output files -button.

- New output file starts as the input file is imported or when the current output file is opened for view and the encoding of the tag batch is continued before closing the current output log file.

4. About & Contact

NFC Creation Studio - For NDEF Content Creation

Copyright © 2017 ToP Tunniste Oy

This software uses NDEF Library for Proximity APIs (NFC) under the LGPLv3.

ToP Tunniste Oy is RFID and NFC solution provider and system integrator.

Support email: support(at)toptunniste.fi

Sales email: sales(at)toptunniste.fi

Contact us!