The maximum operational range is about 7 cm for a card and 5 cm for a tag or a sticker. A target beyond this distance will not be detected, or the communications with it will be full of errors. Some RF-related registers in the module can be trimmed to try to improve this range, but it is not really recommended.
Besides, the minimum range is of a few mm. A card which is closer than this to the RFID/NFC module's antenna could not be detected.
Optimal results are obtained when the card is placed parallel to the surface of the antenna, still and at a distance of 1 cm.
It is advised to execute one init() function each time that we need to do some RFID operation, just like shown in the examples. That will reset the module to the correct configuration and avoid problems.
As shown in the examples, it is good to use "if's" to control which functions are executed. For example, if the authenticate() function was not successful, it does not make sense to execute one read() after that. Also, if the init() function was not successful, or if it did not deliver an UID and a valid ATQ-A, it does not make sense to execute an authenticate() afterwards. All functions should deliver '0' when executed correctly.
When any of the functions does not deliver a successful execution, it is advised to end the loop and start the RFID/NFC process from the beginning (from the init() function).
A typical read or write process can take around 80 ms. Make sure the card remains within the field until the whole process is completed.
Some kind of indicator is strongly advised to let the user know that data exchange was successful. Waspmote can control a LED (built-in or external) or a buzzer for this goal.
After a successful operation, it is advised to execute a short delay (e.g. 2 seconds) to let the user take his card away. This way we avoid to execute the same operation more than one time.
The RFID/NFC antenna should be located in an accessible and comfortable place for the user.
The RFID/NFC antenna, the RFID/NFC module, the battery or Waspmote are not waterproof, so an enclosure is mandatory when the system is going to work outdoors. The antenna should be fixed really close to the wall of the enclosure. Metallic enclosures are not advised.
In general, avoid placing the RFID/NFC antenna near metallic objects, since the communication range could decrease.
It can be a good idea to place the antenna near the top of the enclosure, in parallel with the ground. This way the user can just let the card lie still on top of the case for a while. Wherever the antenna is, do not forget to indicate in your enclosure where it is.
Use the Waspmote's Expansion Board to enable another communication module to transmit certain (or all) RFID/NFC operations to another device or to a data center.
Use a micro SD card to store certain (or all) RFID/NFC operations. This can be a security back up.
Add one Meshlium device to your ecosystem for advanced features such as Linux OS tools, MySQL data base storing system, WiFi and Ethernet connectivity, remote web server or higher computing speed.