Table des matières

Interface entre le lecteur de carte et l'ordinateur

Pour ce projet nous utiiliserons un lecteur de carte de chez electrodragon: le PN532 qui est une copie d'un modele de chez adafruit. Ce lecteur presente l'avantage de fonctionné avec des cartes 13,56Mhz, le même type que les cartes d'etudiant.Un autre avantage est qu'il permet de communiqué par UART ce qui facilite grandement sa connexion à un ordinateur. Le seul composant exterieur dont nous auront besoins est donc un convertiesseur UART vers USB.

Branchements

Voici le schema de branchement avec un adaptateur FTDI de chez electrodragon egalement.

Si l'on utilise une Raspberry Pi on peut se passer du FTDI

Configuration logiciel

Une fois connecter à l'ordinateur il faut configurer la librairie nfc, la methode differe en fonction de votre Os et je n'ai testé que sous Windows et Mac Os X

Linux

Sous Linux la libraire doit être installé séparément, pour se faire il faut exécuter la commande suivante:

sudo apt-get install libnfc

Apres cela on doit configurer la librairie pour qu'elle reconnaisse notre lecteur. Pour se faire, il existe deux méthodes.

Methode utilisant les variables d'environnement

Cette première méthode consiste à ajouter une variable d'environnement décrivant notre lecteur NFC. Pour se faire il suffit de saisir la commande suivante dans le terminal:

LIBNFC_DEVICE=pn532_uart:ttyUSB0:115200

Ou ttyUSB0 représente le port serie associé au FTDI

Si vous utilisez un raspberry pi vous pouvez vous passer du FTDI (Vous devez activer l'UART avant cela). Auquel cas la commande devient

LIBNFC_DEVICE=pn532_uart:/dev/ttyAMA0

Fichier de configuration

La deuxième méthode consiste à créer un fichier de configuration nommé libnfc.conf qui sera placé dans le répertoire /etc/nfc Voici le contenu du fichier

libnfc.conf
# Set log level (default: error)
# Valid log levels are (in order of verbosity): 0 (none), 1 (error), 2 (info), 3 (debug)
log_level = 0
 
# Definit manuellement le périphérique par défaut
# Remplacer ttyUSB0 par le port associé à votre FTDI
# Si vous bracher le lecteur directement sur l'UART d'un raspberry Pi
# remplacer ttyUSB0 par ttyAMA0
device.name = "PN532.Electrodragon"
device.connstring = "pn532_uart:ttyUSB0:115200"

Windows

Sous Windows la libraire est déjà incluse sous la forme d'une DLL dans le dossier de l'exécutable la seule chose à faire est de configurer notre lecteur. Pour se faire, il existe deux méthodes.

Methode utilisant les variables d'environnement

Cette première méthode consiste à ajouter comme pour Linux une variable d'environnement décrivant notre lecteur NFC

Pour cela il faut faire un clic droit sur le “Poste de travail” choisir “Propriétés” dans le menu déroulant,

Puis cliquer sur “Parametres systeme avancés”

Puis sur variable d'environnement

Puis “Nouvelle…” dans variables systèmes

Et remplir “Nom de la variable” et “Valeur de la variable” comme suit:

Ou COM4 représente le port COM associé au FTDI

Fichier de configuration

La deuxième méthode consiste à créer un fichier de configuration nommé libnfc.conf qui sera placé dans le répertoire C:\nfclib
Voici le contenu du fichier

libnfc.conf
# Set log level (default: error)
# Valid log levels are (in order of verbosity): 0 (none), 1 (error), 2 (info), 3 (debug)
log_level = 0
 
# Definit manuellement le périphérique par défaut
# Remplacer COM4 par le port associé à votre FTDI
device.name = "PN532.Electrodragon"
device.connstring = "pn532_uart:COM4:115200"