[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: [RESOLU (ou FAIL)] Gérer le RFID-RC522 sur Pi b+

Message par vague nerd » mar. 17 mai 2016 00:20

Il est évident que je n'aurais pas mis un newby sur la piste IRQ, je ne suis pas sadique à ce point :mrgreen:
Je suis bien un noob en python, mais un pro en C, C++... et surtout java. Pour les concepts avancés de la programmation objet ou non, ça va.
Pis de toute façon, le concept de l’interruption est quand même un concept simple.
Petit scarabée, tu as raison de t'accrocher mais la route est longue :ugeek:
Cordialement,
Le petit scarabée de 80 kg... (voir un morbak :lol: !)
Cordialement,

Vague Nerd

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

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

Message par vague nerd » mar. 17 mai 2016 00:28

Bon, je reçois une interuption tout les centièmes de seconde.
Faut que je comprenne... grrrrrr. :twisted:
Cdt.
Cordialement,

Vague Nerd

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

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

Message par spourre » mar. 17 mai 2016 00:39

vague nerd a écrit :Bon, je reçois une interuption tout les centièmes de seconde.
Faut que je comprenne... grrrrrr. :twisted:
Cdt.
Je réponds à tes 2 derniers posts :

1) Je n'ai pas ton CV mais, au fil de tes interventions, il était clair pour moi qu tu avais un solide background.
2) Le concept d'interruption n'est pas si trivial avec les concepts sous-jacents qu'il implique (sauvegarde du contexte, saut, adresse de retour, restauration..), surtout si on veut optimiser.
3) Il faut décortiquer la doc pour comprendre ce qui arme l'interruption (data disponible, buffer vide ....).

Bon, moi qui suis un "vieux", retraité, il faut que j'aille au dodo.
Bonne nuit
A+

Sylvain

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

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

Message par vague nerd » mar. 17 mai 2016 03:03

Bon, après 4 heures de lecture et de test et de bidouilles, je n'y arrive pas.

Juste en initialisant la librairie avec :

Code : Tout sélectionner

MIFAREReader = MFRC522.MFRC522()
je suis submergé d'interruption.
En regardant le datasheet, ça a pu sembler normal (interruption à chaque tentative de lecture du lecteur lui-même par exemple).
En lançant la commande pour rechercher le type de tag par exemple, plus aucune interruption, idem avec celle pour retrouver uid de la carte.

Selon les sources sur le net, le module est censé donner un up ou un low sur le pin irq à la détection de tag, sans intervention particulière (ha ha ha). Vive le web 2.0.

Aidé du datasheet, j'ai alors essayer de bidouiller la librairie python, écrite avec les pieds, et documenté avec le pied gauche d'un unijambiste amputé du pied... gauche (dsl pour lui, il a quand même fait un truc qui marche).
Ce faisant, j'ai réussi à obtenir des interruptions, mais en non reproductible (ie : changement de valeurs de bytes dans la librairie, fonctionne une fois, pas deux. Il y a des mémoires et FIFO dans le module).

Ma conclusion, c'est qu'il existe un mode d'initialisation du module qui permettrait d'obtenir le résultat voulu, à savoir un module autonome qui lancerait une interruption à la détection. Il faurait, et seulement après l’interruption, initialiser le bus SPI et lire les valeurs contenues dans l'eprom...

Sur ce, je pars trouer d'obus les pauv' zumains qui vont jouer contre ou avec moi à WoT.

Cdt.

Un vague nerd tout énervé.

PS : je comprend mieux de ne pas avoir trouvé de librairie standard, du coup. Le module est pourtant carrément vieux.
Cordialement,

Vague Nerd

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

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

Message par vague nerd » mar. 17 mai 2016 04:10

Vu que je me fais dépouiller, j'ai lâché WoT. Faut pas jouer à ce jeu trop énervé !

Du coup, j'invalide ce que je disais à propos du bus. Je n'ai laissé branché sur le module que le 3.3V, le ground et l'irq.
Je suis tout de même bombardé d'interruptions. Même pas besoin du

Code : Tout sélectionner

MIFAREReader = MFRC522.MFRC522()
.

J'ai donc plus trop de pistes...

Cdt.
Cordialement,

Vague Nerd

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

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

Message par vague nerd » mar. 17 mai 2016 05:06

Incroyable.

Je rebranche les cables, relance mon appli :

Code : Tout sélectionner

can't open device: No such file or directory
Je lance pas le pi contre un mur, re débranche/rebranche le tout, relance mon prog, pareil. Je fais un

Code : Tout sélectionner

dmesg | grep spi
Rien. Je vais dans raspi-config, et là, plus de SPI ! Je reconfigure, reboot, lance l'appli. Elle voit plus les tags.

J'édite le fichier d'un coup de vi : vieux fichier ! Je le ré-upload, l'appli détecte toujours pas mes tags.

Je lance un apt-get upgrade sans update : rien de nouveau. Ouf.

Code : Tout sélectionner

more /etc/modprobe.d/raspi-blacklist.conf
RAS.

Code : Tout sélectionner

lsmod
spi_bcm2835             7868  0
Ha ? Tient ? 2835 ??? Bon, je me souviens peut-être mal.

Code : Tout sélectionner

dmesg | grep spi
[    8.750212] spi spi0.0: setting up native-CS0 as GPIO 8
[    8.759165] spi spi0.1: setting up native-CS1 as GPIO 7
Bon...

Code : Tout sélectionner

ls -l /dev/spi
ls: impossible d'accéder à /dev/spi: Aucun fichier ou dossier de ce type
AAAAAAAAAAAAAAAAAAAAAAAAAAAAARG

Un tour sur le net et je tombe sur

Code : Tout sélectionner

device_tree_param=spi=on
dtoverlay=spi-bcm2708
à ajouter au /boot/config.txt.
Ca me dit rien , mais j'essaie quand même. Reboot.

Code : Tout sélectionner

lsmod
spi_bcm2708             5685  0
Bon. 2708 cette fois.

Code : Tout sélectionner

ls -l /dev/spi
ls: impossible d'accéder à /dev/spi: Aucun fichier ou dossier de ce type
C'est pas vrais....

Code : Tout sélectionner

dmesg | grep spi
[    8.488890] bcm2708_spi 20204000.spi: master is unqueued, this is deprecated
[    8.510680] bcm2708_spi 20204000.spi: SPI Controller at 0x20204000 (irq 80)
Ca ressemble plus à mes souvenirs.

Pas sûr de mon

Code : Tout sélectionner

ls -l /dev/spi
ci dessus, je vais dans la librairie pour voir le device qui y est recherché. C'est /dev/spidev0.0. Bon.

Code : Tout sélectionner

ls /dev/spidev*
/dev/spidev0.0  /dev/spidev0.1
Ouf !

Je relance l'appli : Ca MARCHE !

Voila, en espérant que mon cauchemar servira à quelqu'un...
J'ai donc un fichier qui est retourné dans un état précédent sans explication, le spi qui c'est désactivé tout seul, et un module qui c'est fait une upgrade tout seul.
Incroyable je disais... Aller, je tente un reboot, vérifie que tout va bien et j’éteins tout.
Cdt.

Edit : amarche-toujour
Cordialement,

Vague Nerd

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

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

Message par spourre » mar. 17 mai 2016 10:27

La théorie c'est quand on sait tout et que rien ne fonctionne.
La pratique c'est quand tout marche mais on ne sait pas pourquoi.
Parfois, on marie la théorie et la pratique: rien ne fonctionne mais on ne sait pas pourquoi :mrgreen:

Sylvain

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

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

Message par vague nerd » mar. 17 mai 2016 12:08

La théorie c'est quand on sait tout et que rien ne fonctionne.
La pratique c'est quand tout marche mais on ne sait pas pourquoi.
Parfois, on marie la théorie et la pratique: rien ne fonctionne mais on ne sait pas pourquoi :mrgreen:
:lol: :lol: :lol: :lol: :lol:

Bon, j'ai quand même compris pour le fichier python qui est retourné dans une vieille version : édité avec vi dans une session ssh qui est tombée, je l'ai ré-ouvert, toujours avec vi (dans une nouvelle session, évidement).
Et vi me dit bien, à l'ouverture :

Code : Tout sélectionner

E325: ATTENTION
Found a swap file by the name ".readWithLight.py.swp"
          owned by: pi   dated: Sun May 15 17:41:12 2016
         file name: ~pi/rfid-rc522/MFRC522-python/readWithLight.py
          modified: YES
         user name: pi   host name: automate
        process ID: 30482
While opening file "readWithLight.py"
             dated: Mon May 16 21:23:10 2016
      NEWER than swap file!

(1) Another program may be editing the same file.  If this is the case,
    be careful not to end up with two different instances of the same
    file when making changes.  Quit, or continue with caution.
(2) An edit session for this file crashed.
    If this is the case, use ":recover" or "vim -r readWithLight.py"
    to recover the changes (see ":help recovery").
    If you did this already, delete the swap file ".readWithLight.py.swp"
    to avoid this message.
"readWithLight.py" [Incomplete last line] 103 lines, 2255 characters
Par contre, pour le spi désactivé, et le module upgradé tout seul, ben...
Cdt.
Cordialement,

Vague Nerd

Avatar du membre
Manfraid
Modérateur
Messages : 1402
Enregistré le : ven. 3 oct. 2014 14:50
Contact :

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

Message par Manfraid » mar. 17 mai 2016 13:00

c'est normal comme tu as perdu ta connexion ssh, vi copie le fichier dans un fichier temporaire lors de l'édition, et c'est celui ci qui est encore présent vi ne l'a pas supprimer du a la perte de ssh, il suffit de le supprimer a la main
NAS : DIY OS Debian: DD250Go + 3x2To + 6To
Raspberry pi : 2B OS : Raspbian
Se tromper est humain, Vraiment foutre la merde nécessite le mot de passe de root.

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

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

Message par vague nerd » mar. 17 mai 2016 13:02

Oui, oui, j'ai bien compris.
Par contre, pour le reste... pas la moindre idée.
Cdt.
Cordialement,

Vague Nerd

Répondre

Retourner vers « Gestion centralisée ouverture/fermeture »