Salut tout le monde,
J'avais acheté des modules nrf24 mais j'ai énormément de mal à les faire fonctionner (en fait j'ai du réussir 3 transmissions) et j'ai un copain qui en a aussi acheté et qui à le même problème que moi :
On peut envoyer mais pas recevoir, des fois les modules s'agitent et renvoient des valeurs complètement aléatoires...
Du coup on à entendu dire que c'était très sensible mais comment on peut faire pour les faire fonctionner de manière sure (genre dans un bateau ce serait bien qu'il me lâche pas au milieu du lac) ?
La photo de mon montage est en PJ
Merci d'avance pour votre aide
Ces petites bêtes sont très sensible à La qualité de l’alimentation et du câblage.
La photo n’apporte pas grand-chose…
Un schéma de connexion est beaucoup plus parlant bien sûr il faudra aussi poster le code
Voici le code :
nrf24l01 (2).zip (7.8 KB)
Voici la sortie de la carte uno lorsque j'appuie sur le bouton
debut
emission : PIPE0
reception : PIPE1
1
void Screen::update(Data & d)
/* ------- struct data ------- */
PALevel : 0
dataRate : 2
channel : 123
fin setup
bouton appuye
void ping(Data & d)
-!- erreur d'envoi -!-
-----------------
0 message envoye (10 octets)
millisSend : 11978
expiration : 13478
time out
void Screen::update(Data & d)
-!- erreur d'envoi -!-
-----------------
1 message envoye (10 octets)
millisSend : 13638
expiration : 15138
time out
void Screen::update(Data & d)
-!- erreur d'envoi -!-
-----------------
2 message envoye (10 octets)
millisSend : 15299
expiration : 16799
time out
void Screen::update(Data & d)
-!- erreur d'envoi -!-
-----------------
3 message envoye (10 octets)
millisSend : 16961
expiration : 18461
time out
void Screen::update(Data & d)
-!- erreur d'emission -!-
void Screen::update(Data & d)
/* ------- struct data ------- */
PALevel : 0
dataRate : 2
channel : 123
et celle de la méga
emission : PIPE1
reception : PIPE0
1
0
2
123
envoi d'un message
Le message n'a pas ete envoye
Dans ce cas là j'ai eu aucun résultat (c'est le néant c'est désespérant)
Je maintiens quand même que le code est fonctionnel car ça avait bien fonctionné quelques fois.
Pour les branchements : la carte uno (que j'ai appelé émetteur mais elle peut aussi recevoir)
uno -> nrf24
12 -> miso
11 -> mosi
13 -> sck
A0 -> csn
A1 -> ce
3.3v -> vcc // (j'ai aussi testé avec les adaptateurs mais je les aient enlevés pour tester)
gnd -> gnd
// il y à aussi un écran OLED branché sur SPI
La carte méga (que j'ai aussi appelé récepteur)
méga -> nrf24
3.3v -> vcc
gnd -> gnd
52 -> sck
53 -> csn
50 -> miso
51 -> mosi
49 -> ce
(Si tu veux un vrai schéma avec tous les composants je suis désolé mais je vais pas faire ça ce soir)
Voila à bientôt ![]()
edit : et du coup qu'est-ce que c'est qu'une bonne alimentation et un bon câblage?
Bonsoir,
Place un condensateur de 4,7 µF au plus près de l’alimentation de tes modules.
Vu la qualité du câblage, tu dois prendre un paquets de parasites
Salut, désolé pour le temps que j'ai mis à répondre.
Les résultats n'ont pas été très concluants avec les condensateurs mais je vais trouver le temps de faire un peu de soudure mais avant ça j'aimerais bien savoir qu'est ce que je peux faire de plus pour que mon câblage soit moins sensible ?
Parce que je peux souder tresser nouer denuder couper manger mais la technologie actuelle ne me permet pas encore d'enlever les câbles...
Cordialement
Pour ma part j'avais un NRF24L01 relié à une NANO sur breadboard par des fils DUPONT et le fonctionnement était plus qu'incertain. Problèmes récurrents SPI (câblage).
J'ai donc enfiché le NRF24L01 sur un support adaptateur DIP, lui-même enfiché sur la breadboard. Liaison par des fils plus courts.
Résultat : SPI OK. Communication presque OK.
Ajout d'un condensateur 10µF sur le 3.3V du NRF24L01 : amélioration très significative.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.

