Go Down

Topic: Groove-NFC (Seeed) sur m5paper (Read 128 times) previous topic - next topic

openmotion

Jan 24, 2021, 11:04 am Last Edit: Jan 24, 2021, 11:18 am by openmotion
bonjour,
j'aimerais connecter un module grove NFC v1.1 sur mon M5paper ( ESP32 )
j'ai bien suivi la doc d'installation de la librairie
https://wiki.seeedstudio.com/Grove_NFC/
en installant la librairie : Seeed Arduino NFC
je voudrais l'utiliser sur le port C ( UART )

le programme se compile mais j'ai l'erreur : Didn't find PN53x board


sur le port C grove, j'ai G, 5V TXT, G18, G19
merci pour votre aide

voici le code

Code: [Select]
#include <NfcAdapter.h>
#include <PN532/PN532/PN532.h>
#include <M5EPD.h>
#include "driver/gpio.h"
#include "driver/adc.h"

    #include <PN532/PN532_HSU/PN532_HSU.h>
    PN532_HSU pn532hsu(Serial1);
    NfcAdapter nfc(pn532hsu);
 
void setup(void) {
    M5.begin();
    Serial.println("NDEF begin");
    Serial1.begin(115200);
    Serial1.println("NDEF Reader");
    nfc.begin();
}

void loop(void) {
    SERIAL.println("\nScan a NFC tag\n");
    if (nfc.tagPresent()) {
        NfcTag tag = nfc.read();
        tag.print();
    }
    //delay(5000);
     M5.update();
    delay(100);
}

al1fch

#1
Jan 24, 2021, 11:18 am Last Edit: Jan 24, 2021, 11:26 am by al1fch
Bonjour

Pour faciliter les réponses il est demandé de donner des liens actifs vers les composants utilisés !!
(voir les Règles du Forum, c'est impératif en arrivant sur le Forum))

1)Le module Groove est-il bien en configuration matérielle UART ?
2)Comment ont été établies les liaisons Rx Tx entre le module et la carte ESP32 ?
3) le débit 115200 bauds convient-il au module NFC utilisé ?
4) le module NFC attend-il réellement "NDEF Reader" sur son entrée Rx pour commencer à travailler?(envoyé  avant le nfc.begin() dans le code )

J-M-L

#2
Jan 24, 2021, 11:33 am Last Edit: Jan 24, 2021, 11:33 am by J-M-L
ces 2 lignes sont louches:
Code: [Select]
Serial1.begin(115200);
  Serial1.println("NDEF Reader");

si le lecteur NFC est sur Serial1, pourquoi lui envoyer "NDEF Reader" et je ne pense pas que ce soit à vous de régler le débit. La bibliothèque le fait pour vous au travers de pn532hsu quand vous faites
Code: [Select]
nfc.begin();

Ensuite je pense qu'il peut y avoir des soucis sur la configuration de Serial1. Dans une première version du noyau des M5 je crois (de mémoire) que c'était sur GPIO16 et GPIO17. Dans M5Core2 ces pins sont pour la PSRAM et la seconde interface série sur le PortC utilise GPIO13 et GPIO14.

Je ne connais pas le m5paper (ça semble rigolo comme produit) - je ne sais pas quelle version est embarquée et donc quelles sont les pins réellement affectées à Serial1
Hello - Please do not PM me for help,  others will benefit as well if you post your question publicly on the forums.
Bonjour Pas de messages privés SVP, postez dans le forum directement pour que ça profite à tous

al1fch


J-M-L

effectivement j'ai trouvé dans la doc aussi PORT.C G18,G19 UART

il faudrait vérifier dans le code source associé au firmware le  HardwareSerial.cpp et vérifier que Serial1 est bien déclaré
Hello - Please do not PM me for help,  others will benefit as well if you post your question publicly on the forums.
Bonjour Pas de messages privés SVP, postez dans le forum directement pour que ça profite à tous

openmotion

#5
Jan 24, 2021, 05:15 pm Last Edit: Jan 24, 2021, 05:19 pm by openmotion
bonjour,

alors le matériel c'est celui là
https://m5stack.com/products/m5paper-esp32-development-kit-960x540-4-7-eink-display-235-ppi?variant=37595977908396

le module NFC c'est celui - ci
https://www.gotronic.fr/art-module-grove-nfc-13-56-mhz-113020006-21838.htm

le module groove est sur le port C donc UART, si je regarde sur le dos de l'appareil le port C, c'est G18 et G19, donc G18 est le RX_PIN et G19, TX_PIN

à ce que j'ai pu comprendre le mieux est d'utiliser le serial software afin de pouvoir indiquer le RX et TX
voici mon code actualisé
Code: [Select]
#include <NfcAdapter.h>
#include <PN532/PN532/PN532.h>
#include <M5EPD.h>
 
#include <PN532/PN532_SWHSU/PN532_SWHSU.h>
#include "SoftwareSerial.h"
 //HardwareSerial Serial1(1);

#define RX_PIN 18
#define TX_PIN 19
 #define BAUD_RATE 9600
    SoftwareSerial SWSerial(RX_PIN, TX_PIN);
PN532_SWHSU pn532swhsu(SWSerial);
NfcAdapter nfc(pn532swhsu);
 
void setup(void) {
    M5.begin();
    M5.enableEXTPower();
    Serial1.println("NDEF begin");
    //delay(5000);
    Serial1.begin(9600, SERIAL_8N1,RX_PIN, TX_PIN);
//    Serial1.begin(BAUD_RATE, RX_PIN, TX_PIN, SWSERIAL_8N1, false, 95, 11);
    Serial1.println("NDEF Reader");
    nfc.begin();
}

void loop(void) {
    SERIAL.println("\nScan a NFC tag\n");
    if (nfc.tagPresent()) {
        NfcTag tag = nfc.read();
        tag.print();
    }
    //delay(5000);
     M5.update();
    delay(100);
}





openmotion

effectivement j'ai trouvé dans la doc aussi PORT.C G18,G19 UART

il faudrait vérifier dans le code source associé au firmware le  HardwareSerial.cpp et vérifier que Serial1 est bien déclaré
effectivement j'ai trouvé dans la doc aussi PORT.C G18,G19 UART

il faudrait vérifier dans le code source associé au firmware le  HardwareSerial.cpp et vérifier que Serial1 est bien déclaré
je ne trouve pas ce fichier dans le dossier Seeed_Arduino_NFC-master et ses sous dossiers

J-M-L

à mon avis ça ce n'est toujours pas nécessaire
Code: [Select]
   Serial1.println("NDEF Reader");
c'est sans doute
Code: [Select]
   Serial.println("NDEF Reader");
que vous voulez faire.

Ensuite c'est quand même un peu dommage de prendre une émulation alors que la fonction existe en matériel...

mais est-ce que ça fonctionne ?
Hello - Please do not PM me for help,  others will benefit as well if you post your question publicly on the forums.
Bonjour Pas de messages privés SVP, postez dans le forum directement pour que ça profite à tous

openmotion

#8
Jan 24, 2021, 05:31 pm Last Edit: Jan 24, 2021, 06:33 pm by openmotion
bonjour
ça ne fonctionne toujours pas
en même temps la sortie est sur 5v alors que le module NFC est sue 3,3v peut etre ça

du coup ce modèle est peut être mieux
Code: [Select]
https://www.dfrobot.com/product-1917.html


je veux pouvoir scanner un tag NFC et récupérer son identifiant

j'ai fait test en enlevant : Serial1.println("NDEF Reader");
mais pas de changement : Didn't find PN53x board

j'ai demandé aussi sur le github M5
https://github.com/m5stack/M5EPD/issues/18

Go Up