[RESOLU (ou FAIL)] Gérer le RFID-RC522 sur Pi b+

Portail, portes, volets et stores de terrasse obéiront aux ordres du Raspberry Pi

Modérateur : Francois

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Gérer le RFID-RC522 sur Pi b+ ou zero

Message par vague nerd » mar. 10 mai 2016 07:41

@spoore
Citations, illustration et cours extraits en provenance des article RFID/NFC de Hackable n°10.

ImageImage
J'ai une tablette nexus 7 1012 qui permet de lire / écrire sur tag NFC ou RFID 13.65. On parle de RFID13.56 Mhz
Les tags fournis avec le rfid-rc225 en sont.

Les applications citées à partir de la page 34 permettent de lire et écrire sur les tags fournis avec mes rc522.

L'article "Configurer proprement le support nfc sur rasperry pi" explique comment configurer élégamment la librairie libnfc (par constitution d'un package .deb à destination de raspbian à partir des dépots officiels de debian).
Cependant, le procédé s'attache à démontrer comment telecharger/compiler/installer du rc532 et non du rc522.
Est-ce applicable dans mon cas ?

Je creuse...

1.Téléchargement / installation d'un debian wheezy sur vmware
1.Téléchargement / installation d'un debian jessie (8.x) sur vmware
2.Ajout du dépot des sources

Code : Tout sélectionner

sudo vi /etc/apt/sources.list
et ajout de

Code : Tout sélectionner

deb-src http://ftp.fr.debian.org/debian/ wheezy main non-free contrib
Pas besoin si on se gaufre pas de version ! wheezy : 7.x, jessie 8.x.[/strike]
3.Récupération des sources

Code : Tout sélectionner

sudo apt-get update
apt-get source libnfc
apt-get source libfreefare0
4.Transfert sur le pi de :
pour la LibNFC

Code : Tout sélectionner

libnfc_1.7.1-4.debian.tar.xz
libnfc_1.7.1-4.dsc
libnfc_1.7.1-4.orig.tar.gz,
pour la libfreefare:

Code : Tout sélectionner

libtreefare_0.4.0-2.debian.tar.xz
libfreefare_0.4.0-2.dsc
libfreefare_0.4.0.orig.tar.gz
5. dpkg-source -x des deux .dsc

Code : Tout sélectionner

dpkg-source -x libnfc_1.7.1-4.dsc
dpkg-source -x libfreefare_0.4.0-2.dsc
6. Construction des packet .deb

Code : Tout sélectionner

cd libnfc-1.7.1/
dpkg-buildpackage -b
Remarque : en fonction de ce qui est déjà installé, il se peut qu'il faille télécharger au préalable d'autres répendences (apt-get install xyz)
7. installation :

Code : Tout sélectionner

sudo dpkg -i *.deb
Cdt.
Cordialement,

Vague Nerd

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Gérer le RFID-RC522 sur Pi b+ ou zero

Message par vague nerd » mar. 10 mai 2016 10:51

Bon, je craque.
libnfc n'est pas présent dans les dépots wheezy, uniquement dans les depots jessie.
Mon pi de test est sous wheezy...
Je lache l'affaire pour le moment.
Cordialement,

Vague Nerd

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Gérer le RFID-RC522 sur Pi b+ ou zero

Message par vague nerd » mar. 10 mai 2016 19:03

'soir.
L'article "Configurer proprement le support nfc sur rasperry pi" explique comment configurer élégamment la librairie libnfc (par constitution d'un package .deb à destination de raspbian à partir des dépots officiels de debian).
Cependant, le procédé s'attache à démontrer comment telecharger/compiler/installer du rc532 et non du rc522.
Est-ce applicable dans mon cas ?
et
Image
Quelqu'un (spourre peut-être ?) saurait répondre ?

@domi
On est bien d'accord que mon module à 3€ n'est pas utilisable avec la techno que tu proposes ? Il faut du lien série et non bus spi ?
Cdt.
Cordialement,

Vague Nerd

domi
Administrateur
Messages : 3230
Enregistré le : mer. 17 sept. 2014 18:12
Localisation : Seine et Marne

Re: Gérer le RFID-RC522 sur Pi b+ ou zero

Message par domi » mar. 10 mai 2016 20:23

Bonsoir,
Je confirme qu'il te faut d'autres modules (arduino et nrf24l01), et après vérif, la techno est donnée avec un "PN532 NFC RFID" et non un RC522.
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Gérer le RFID-RC522 sur Pi b+ ou zero

Message par vague nerd » mar. 10 mai 2016 20:54

Ok, merci, je suis sur d'avoir compris maintenant !
Cdt.
Cordialement,

Vague Nerd

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Gérer le RFID-RC522 sur Pi b+ ou zero

Message par vague nerd » mer. 11 mai 2016 09:41

Bonjour.

J'ai donc poursuivi en :
1. récupérant les sources des dépots jessie sur ma vm debian jessie
2. transférant les fichiers récupéré sur mon pi en wheezy
3. lancné le dpkg-buildpackage -b, qui me retourne :

Code : Tout sélectionner

dpkg-buildpackage: paquet source libnfc
dpkg-buildpackage: version source 1.7.1-2
dpkg-buildpackage: source changé par Nobuhiro Iwamatsu <iwamatsu@debian.org>
dpkg-buildpackage: architecture hôte armhf
 dpkg-source --before-build libnfc-1.7.1
 fakeroot debian/rules clean
dh clean --with autoreconf
   dh_testdir
   dh_auto_clean
   dh_autoreconf_clean
   dh_clean
 debian/rules build
dh build --with autoreconf
   dh_testdir
   dh_autoreconf
Segmentation fault
autom4te: need GNU m4 1.4 or later: /usr/bin/m4
aclocal: /usr/bin/autom4te failed with exit status: 1
autoreconf: aclocal failed with exit status: 1
dh_autoreconf: autoreconf -f -i returned exit code 1
make: *** [build] Erreur 2
dpkg-buildpackage: erreur: debian/rules build a produit une erreur de sortie de type 2
Et effectivement, m4 --version me retourne :

Code : Tout sélectionner

Erreur de segmentation
J'ai donc retiré et réinstallé m4, sans améliorer le résultat.

Remarque :

Code : Tout sélectionner

whereis m4
m4: /usr/bin/m4 /usr/bin/X11/m4 /usr/share/man/man1/m4.1.gz
Une idée ?
EDIT : si je comprend bien, c'est une histoire de version de noyau. Pourtant, le m4 est bien celui des depot wheezy... je suis largué...
REEDIT : apt-get update fini par dire :

Code : Tout sélectionner

W: Erreur de GPG : http://ftp.fr.debian.org wheezy Release : Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY 8B48AD6246925553 NO_PUBKEY 7638D0442B90D010 NO_PUBKEY 6FB2A1C265FFB764
Pourtant, mon /etc/apt/sources....[/strike] ok pigé : un fichier swap plus recent est présent suite à mon rage quit d'hier...
aaaaaaaaaaaaaaaaaaarg ! Le fichier de conf des dépots, c'est bien /etc/apt/sources.list ????????
Cdt.
Cordialement,

Vague Nerd

spourre
Raspinaute
Messages : 735
Enregistré le : lun. 22 déc. 2014 16:50
Localisation : 67380 LINGOLSHEIM

Re: Gérer le RFID-RC522 sur Pi b+ ou zero

Message par spourre » mer. 11 mai 2016 10:14

vague nerd a écrit :Bonjour.
...
J'ai donc retiré et réinstallé m4, sans améliorer le résultat.
...

Une idée ?
EDIT : si je comprend bien, c'est une histoire de version de noyau. Pourtant, le m4 est bien celui des depot wheezy... je suis largué...
Cdt.
Remarque :

Code : Tout sélectionner

whereis m4
m4: /usr/bin/m4 /usr/bin/X11/m4 /usr/share/man/man1/m4.1.gz

Bonjour,

Je fais une réponse groupée à plusieurs posts.
Je dois préciser que mes suggestion sont théoriques car je ne dispose pas du lecteur RFID pour tester et que mes raspis sont encore en Wheezy.

1) pour vérifier si le matériel est bien supporté par la nfclib , j'ai googolisé mais rien trouvé de convainquant. Il reste la solution de charger les sources (cf. méthode Denis) et de rechercher la chaîne de caractères RC522 dans les fichiers (grep ou egrep...).
Ou encore de lancer la configuration pour voir si le matériel est proposé.

2) Toujours en googolisant, j'ai essayé de trouver un backport vers Wheezy, sans plus de succès. J'ai juste trouvé un avertissement du style "vous pouvez compiler mais ne demandez pas de support" :cry:

3) Ma suggestion serait donc:

1) de faire une VM minimaliste avec Jessie (déjà fait d'après le dernier post).
2) de préparer une carte SD avec la version jessie de Raspbian.
3) de suivre la méthode décrite par Denis qui précise bien que selon ce qui est déjà installé, il peut être nécessaire de compléter pour satisfaire les dépendances (prendre les versions dev dans ce cas)

Bon courage

--
Sylvain

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Gérer le RFID-RC522 sur Pi b+ ou zero

Message par vague nerd » mer. 11 mai 2016 10:19

Bon courage
:lol: J'en suis à mon deuxième rage-quit !
pour vérifier si le matériel est bien supporté par la nfclib , j'ai googolisé mais rien trouvé de convainquant.
Pareil.
Il reste la solution de charger les sources (cf. méthode Denis) et de rechercher la chaîne de caractères RC522 dans les fichiers (grep ou egrep...).
Bonne idée, j'y avais pas pensé.
j'ai essayé de trouver un backport vers Wheezy
C'est ce que j'essaie de faire : j'ai récupéré les sources jessie et j'essaie de les compiler sur wheezy, mais j'ai un soucis avec m4, sans comprendre ce qui se passe.
il peut être nécessaire de compléter pour satisfaire les dépendances
Pas de soucis pour ça. Effectivement, il m'en manquait quelques unes.

J'ai édité et re-édité mes post précedents, si tu veux bien les re-parcourir...C'est plus la peine...

Merci de ton aide.
Cdt.
Cordialement,

Vague Nerd

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Gérer le RFID-RC522 sur Pi b+ ou zero

Message par vague nerd » mer. 11 mai 2016 10:27

Bon, ben je crois que je vais abandonner :

Code : Tout sélectionner

[Prompt]~/nfc/libnfc-1.7.1/libnfc $ more * | grep 532
libnfc_la_LDFLAGS = -no-undefined -version-info 5:1:0 -export-symbols-regex '^nfc_|^iso14443a_|^str_nfc_|pn53x_transceive|pn532_SAMConfiguration|pn53x_read_register|pn53x_write_register'
#if defined (DRIVER_PN532_UART_ENABLED)
#  include "drivers/pn532_uart.h"
#endif /* DRIVER_PN532_UART_ENABLED */
#if defined (DRIVER_PN532_SPI_ENABLED)
#  include "drivers/pn532_spi.h"
#endif /* DRIVER_PN532_SPI_ENABLED */
#if defined (DRIVER_PN532_I2C_ENABLED)
#  include "drivers/pn532_i2c.h"
#endif /* DRIVER_PN532_I2C_ENABLED */
#if defined (DRIVER_PN532_UART_ENABLED)
  nfc_register_driver(&pn532_uart_driver);
#endif /* DRIVER_PN532_UART_ENABLED */
#if defined (DRIVER_PN532_SPI_ENABLED)
  nfc_register_driver(&pn532_spi_driver);
#endif /* DRIVER_PN532_SPI_ENABLED */
#if defined (DRIVER_PN532_I2C_ENABLED)
  nfc_register_driver(&pn532_i2c_driver);
#endif /* DRIVER_PN532_I2C_ENABLED */

Code : Tout sélectionner

[Prompt]~/nfc/libnfc-1.7.1/libnfc $ more * | grep 522
[Prompt]~/nfc/libnfc-1.7.1/libnfc $
Dommage...
Je repars donc sur la solution dégeu des GIT. Misère. :cry:
Cordialement,

Vague Nerd

spourre
Raspinaute
Messages : 735
Enregistré le : lun. 22 déc. 2014 16:50
Localisation : 67380 LINGOLSHEIM

Re: Gérer le RFID-RC522 sur Pi b+ ou zero

Message par spourre » mer. 11 mai 2016 17:42

vague nerd a écrit : ...
Dommage...
Je repars donc sur la solution dégeu des GIT. Misère. :cry:
Le GIT c'est pas degeu; ce n'est qu'un outil :mrgreen:
Je continue à Googoliser et je te tiens au courant si je trouve un os à ronger.
En attendant, bon courage et prends des notes pour nous faire un beau tuto.
Cordialement

--
Sylvain

Répondre

Retourner vers « Gestion centralisée ouverture/fermeture »