Arduino UNO, Elechouse PN532, libnfc (Windows/macOS) non funzionano

Buongiorno,

vi scrivo perchè ormai da ore non riesco a risolvere un problema.

Ho una scheda NFC Elechouse Module V3 (quella rossa per intenderci), collegata via SPI ad Arduino Uno (ma ho provato anche in HSU sui pin RX e TX).

Tutto funziona con gli esempi inclusi nella libreria, arduino comunica con la scheda NFC e mi legge le carte NFC mostrandomi i risultati nella console di arduino studio. Questo succede sia via SPI che via HSU.

Il problema è quando io cerco di usare libnfc sul computer per inviare comandi alla scheda. Libnfc cerca di comunicare (si accendono i led tx e rx su arduino) ma mi da sempre:

error	libnfc.driver.pn532_uart	pn53x_check_communication error

Trova 1 dispositivo NFC ma poi non riesce a comunicarci.

Secondo me è il codice sorgente che uso su arduino che non va bene. Uso questo:

#include <SPI.h>
#include <PN532_SPI.h>
#include <PN532.h>

PN532_SPI pn532spi(SPI, 10);
PN532 nfc(pn532spi);


void setup(void) {
  Serial.begin(115200);
  Serial.flush();

  nfc.begin();
  
}

void loop(void) {
  
}

Le librerie incluse sono quelle di Elechouse: https://github.com/elechouse/PN532

I PIN li ho fatti come consigliato dal pdf di Elechouse:
SCK > Pin 13
MISO > Pin 12
MOSI > Pin 11
SS > Pin 10
VCC > VCC arduino (ho provato sia 5 che 3v)
GND > GND arduino (ho provato con tutti i GND)

Il problema è che secondo me quando arriva un comando ad arduino questo non capisce che deve inoltrarlo alla schedina NFC e poi rispondere. Però non ho trovato nessun codice che faccia questa cosa.

Ho provato un sacco di modifiche al codice, questo è quello che funziona “meglio” perchè almeno libnfc trova 1 dispositivo.

Sapete darmi qualche dritta?

Cordiali saluti.

Buongiorno,
essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con molta attenzione tutto il su citato REGOLAMENTO ... Grazie. :slight_smile:

Guglielmo

P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposito thread, nessuno ti potrà rispondere, quindi ti consiglio di farla al più presto. :wink: