NRF24L01 comunicazione tra 2 arduino senza filo

Ciao a tutti oggi ho provato a far comunicare due arduino senza fili tramite il modulo NRF24L01.
dopo aver collegato il tutto ho provato ma non funziona... L'esempio che ho preso è questo qui.
Il problema potrebbe essere la differenza tra il quarzo di arduino e di quello del modulo? Rispettivamente 12 e 16 kHz.

Nessuno ha idee?

nessuna idea, anche perché abbiamo poche info
fammi capire, tu hai collegato come c'è scritto nel link, hai caricato i due differenti programmi e poi?
non vanno, non riesci a caricare, hai messaggi di errore strani...
fai così:
un bel respiro, libera polmoni, mente e tavolo di lavoro
riparti da capo, un solo arduino, diciamo il trasmettitore
collegalo come da link, carica il programma e lascialo li, fagli una foto, casomai se serve che ti chiediamo i collegamenti, la hai pronta

un bel respiro, libera polmoni, mente e tavolo di lavoro
riparti da capo, un solo arduino, questa volta il ricevitore
collegalo come da link, carica il programma e lascalo li, tutto come per l'altro insomma

poi ri-scrivici, che andiamo avanti

Ok perfetto, ho fatto come mi hai detto tu. A differenza di ieri ho aggiornato le librerie e adesso nel programma del ricevitore mi da questo errore,

exit status 1
void value not ignored as it ought to be

in questa parte di programma

while (!done)
{
// ricevi il messaggio
---> done = radio.read( datatoreceive, sizeof(datatoreceive) );
}

ecco un primo sintomo, aspetta che ci penso un’attimo
potrebbe essereci un problema di aggiornamento delle librerie
stay tuned

No, mi spiace, supera le mie capacità

nella libreria rf24 la funzione read() NON restituisce nulla (è di tipo void)
quindi non puo' essere usata in quella maniera
credo, ma non saprei aiutarti più di così, che l'autore abbia usato una libreria differente, ovvero che nel tempo la libreria sia stata modificata pesantemente
devi chiedere a lui, mi spiace

Grazie mille del consiglio! Nel corso della giornata ho provato a caricare altri esempi, uno dei quali ha funzionato! Il problema? Dopo ho provato a invertire il trasmettitore e il ricevitore e non funzionava più (ho dedotto che l'arduino nano non è in grado di soddisfare la richiesta di corrente nella funzione da "trasmettitore", dato che anche con un altro esempi ho avuto un comportamento simile). Dopo di che ho rimesso tutto come mi ha funzionato la prima volta e ovviamente, non funzionava più... L'esempio funzionante l'ho preso da qua:

Io ci sto provando in tutti i modi ma non esce fuori niente, sto impazzendo...
Ho provato con altri programmi, i collegamenti gli ho controllati e ricontrollati e sono corretti, ho saldato il condensatore tra Vcc e Gnd come consigliano, gli ho alimentati con un 3.3 V separati... Non ho più idee

ho trovato questo post che spiega il mio problema… Cosa dite di fare? Creare una basetta per eliminare tutti i disturbi? Mettere altri condensatori tra Vcc e massa? Qualcuno sa dirmi quali sono più o meno i valori corretti da avere per una buona connessione?
Grazie mille a tutti,
Alessandro

Ciao Alessandro

Non ti lamentare, sono due mesi che ci lavoro sopra e non ne vego a capo.

Tengo a precisare che io uso TX e RX diversi, ma il problema è simile al tuo.

Nella esperienza del caso, sono venuto a conoscenza di questi particolari.

Per esempio l' IDE quale usi? la zipata o la autoinstallata. Quante ne usi di IDE?

A me hanno detto di usare una IDE per il trasmettitore e una IDE per il ricevitore, in modo da usare due

porte COM differenti per il TX e per il RX. Tu fai così?

Il problema disturbi, si ho provato pure io il filtro, ma se abbassi l'alimentazione a 3,3v sul ricevitore

i disturbi vengono attenuati. Nel tuo caso non so se funziona anche a 3.3v.

Riguardo al problema Arduino Nano, mi fai venire un dubbuio, visto che lo uso pure io, pero ho provato a

sostituirlo con un Arduino Mega, ma il problema rimane.

Le librerie: ci vuole la sua ma è una giungla se non le sai interpretare. Figurati, riesco a malapena a

buttare giù un programma semplice.

Ora nel Forum ho chiesto come testare il programma di ricezione. Vediamo se arriva qualche aiuto.

Buon Lavoro
erosb

Io NON so che nFR24L01+ usiate (quelli senza il + finale sono obsoleti e dismessi da anni) ...
... ma certo che se una breakout board del nRF24L01+ da SparkFun costa circa 20 US$ mentre quelle che qui sul forum io spesso vedo usate sono quelle schifezze vendute su Aliexpress da meno di 2 US$ (meno del costo del solo chip nRF24L01+ per quantità) ... un motivo per cui avete problemi ci sarà non vi pare ? E non aggiungo altro.

Guglielmo

Per lo OP
Ferma tutto, se un esempio ti è andato si tratta di capire gli errori, non di introdurne di nuovi
Hai messo il condensatore sullalimentazione?
Ripartì da capo, cerca di capire che librerie stai usando, che sembra che ne esistano almeno due versioni tra loro indistinguibili,
Fai come nel mio precedente post
Un passo per volta, in ordine, fai due foto del colegamento
Se è andato una volta può andare ancora, importante non creare confusione,

Scusate il ritardo se non ho più risopsto...
per Guglielmo, ho controllato e i miei moduli sono nrf24l01+ come dici tu,
per erosb invece posso dirti che ho scaricato l'ultima libreria esterna RF24 sia per il ricevitore che per il trasmettitore e non ci dovrebbero essere problemi, la cosa è generale per tutti e due...
per standardoil, il problema è proprio quello, MI HA FUNZIONATO 1 E UNA SOLA VOLTA poi nello stesso modo ha smesso dopo aver ricaricato i programmi...
Adesso ho provato a saldare il tutto su una millefori, saldato il condensatore tra 3v3 e GND, data una buona fonte di alimentazione (decisamente non quella di arduino). Dopo di che ho caricato il programma per testare la comunicazione tra arduino e il modulo e con la comunicazione a 250 KBPS vedo dei dati penso abbastanza soddisfacenti...
Entro questo martedi sicuramente provo a fare lo stesso anche sull'altro modulo e vi darò i risultati (si spera questa volta soddisfacenti)...
Veramente grazie mille a tutti del tempo perchè per me questa cosa è abbastanza importante dato che la devo portare alla maturità!!! Manca poco ahaha

Sono ben accetti altri commenti,

Alessandro

Eccomi ritornato,
ho saldato tutti i collegamenti e sono passato da avere il problema della “cattiva” comunicazione tra arduino e il modulo ad avere un problema di malfunzionamento della comunicazione, quindi direi che un micro passo avanti è stato fatto…
Oggi farò altre prove, vi tengo aggiornati

Alessandro

Ciao a tutti sono tornato!
Volevo solo dire che sono riuscito a risolvere il mio problema.
Dopo aver utilizzato questo schema che lascio in allegato il modulo ha funzionato sia senza condensatore tra 3V3 e Gnd sia con alimentazione di arduino blu!!!
Ricordo però la linea del settaggio della potenza a low.
Consiglio vivamente questo modo se avete problemi.
Buona programmazione
Alessandro

Volevo solo dire che sono riuscito a risolvere il mio problema.

Bella forza..... se hai una Leonardo, mi pare anche normale che non ti funzionino i collegamenti per la UNO

brunello22:
Bella forza..... se hai una Leonardo, mi pare anche normale che non ti funzionino i collegamenti per la UNO

allora, prima di saltare a conclusioni affrettate.
i collegamenti dell' ICSP sono solo per la comunicazione, quindi si dovrebbero fare gli esempi con quelli per semplificare la vita a tutti gli utilizzatori.
Secondo io non ho un leonardo, ho l'UNO e non mi funzionavano i collegamenti dell'UNO. Quindi dato che si ha uno standard, quello dell'icsp, perché non si usa quello?
La foto brunello va bene per TUTTI i tipi di arduino ahahah