Problème detransmission avec nRF24L01+

Bonjour,

J’ai réalisé le montage suivant comprenant 2 parties pour mesurer température et humidité intérieures et extérieures et l’afficher sur un écran LCD :
• Module principal : Partie intérieure comprend un arduino Uno, un capteur de T° DHT22, un module horloge DS3231, un afficheur LCD I2C 4 lignes sur 20 caractères, un transmetteur nRF24L01+
◦ Librairies utilisées : #include “DHT.h”, #include <Wire.h>, #include <LiquidCrystal_I2C.h>, #include <DS3231.h>, #include <SPI.h>, #include <nRF24L01.h>, #include <RF24.h>
• Module déporté :Partie extérieure comprend un arduino Pro Mini, un capteur de T° DHT22, un module horloge DS3231, un transmetteur nRF24L01+
◦ Librairies utilisées : #include “DHT.h”, #include <Wire.h>, #include <DS3231.h>, #include <SPI.h>, #include <nRF24L01.h>, #include <RF24.h>
Chaque module a été testé séparément sur chaque Arduino et la liaison nRF24L01+ a été testé avec succès dans les deux sens.

Sans la partie du programme concernant l’afficheur, les programmes des 2 parties fonctionnent correctement.
A la 1ère utilisation de l’instruction : lcd.setCursor(), l’ensemble continue de fonctionner.
Si on ajoute une seconde instruction lcd.setCursor() on ne reçoit plus le message en provenance du module déporté.
De même la réception ne fonctionne plus si on utilise l’instruction : lcd.createChar()

Merci d’avance pour votre aide.
Cordialement
Jean-Pierre

Bonsoir Jean-Pierre

il manque plein d'information pour qu'on puisse vous aider... lisez les règles du forum pour voir ce qu'il faut joindre à votre question

Bonjour,

tu dis que la réception ne fonctionne plus. N'est-ce pas plutôt l'affichage sur le LCD qui ne marche pas ? Pour le savoir, utilise quelques Serial.print() pour voir sur le moniteur si tes données arrivent ou non.

Mais je suis de l'avis de J-M-L, un peu plus d'information serait la bienvenue

une hypothèse: Si vous êtes passé sous la nouvelle bibliothèque RF24, vérifiez le format de votre adresse pour le pipe en lecture ou en écriture. Dans la nouvelle mouture ce sont des uint64_t

Bonjour et merci pour vos réponses,

Le problème est résolu et je vous confirme que la cause était bien liée au format de l'adresse pour le pipe en lecture ou en écriture. Après avoir utilisé uint64_t ça fonctionne.

Encore merci Cordialement