Problème technique attiny / nrf24l01

Bonjour à tous,
je me suis fait un module relais basé sur un attiny et un module nrf24l01 pour la communication.
Le tout est alimenté par un régulateur hlkpm01 ( 220v - 5v).
Le nrf24l01 ne support que tu 3.3v j'ai donc placé un régulateur 5v - 3.3v

Je rencontre un problème de communication, lorsque le montage est alimenté en 5v et aucun problème lorsque celui-ci est alimenté en 3.3V .
Pour trouver ce problème j'ai utilisé un arduino uno qui m'a permis d'alimenter mon module soit en 5v ou en 3v.

Quelqu'un aurait-il une idée d'où peut provenir le problème.
Un peu plus d'information sur les composant utilisé dans le montage ici : Domotiser un appareil grâce à un relai - La domotique DIY

Et les branchements de l'attiny et du NRF24 ici:

Merci d'avance

Sur ce blog , il n'y a aucun schéma.
Le problème vient surement d'une incompatibilité de niveaux de tension entre l'attiny en 5V et le NRF.

Les niveaux de tension représentant les niveaux logiques 1 et 0 dépendent de la tension d'alimentation.

Il faut les alimenter en 3.3V.

Le nrf24 est alimenté comme dans le schema suivant, l'attiny lui est alimenté via le 5V.

Je ne comprend pas l'histoire des niveaux de tension.

Merci d'avance

PS: le schema attiny et nrf24 est situé dans des articles précédents, je me suis trompé.

Bonsoir

Je rencontre un problème de communication, lorsque le montage est alimenté en 5v et aucun problème lorsque celui-ci est alimenté en 3.3V

Le probème découle d'une mauvaise utilisation : voir la notice du nrF24l01

On y voit que la tension d'alimentation ne doit pas dépasser 3,6V
par contre le nrF24l01 peut communiquer avec un micro alimenté en 5V
alim maxi.png

Tu as de la chance si le module a survécu au 5V sur son alimentation, le fabricant de la puce nRF a mis en garde les utilisateurs....

Je pense qu'il y a eu une mauvaise compréhension.
L'attiny est alimenté en 5v et pour le nrf24 j'ai mis un régulateur de tension 5v vers 3v devant afin qu'il ne reçoive uniquement du 3v.
Donc si l'ensemble du montage est alimenté en 5v ( nrf24 forcément en 3v avec le régulateur ) problème de récéption et si le montage est alimenté en 3v ( Attiny84 et nrf24l01 ) aucun problème.
Je ne comprends pas ce qu'il peut provoquer ce problème.

Merci d'avance

mauvaise compréhension ? sans doute.....sommes nous d'accord sur ce qui suit ?

Ne pas confondre :
-Tension d'alimentation du nrf24l01 (issue du régulateur)
-tension reçue sur ses entrées de signaux, câblées directement à un microcontrolleur alimenté en 5V.

~~Le nrf24L01 "n'aime pas recevoir" sur ses entrées (MOSI, CLK, CE.....) des tensions supérieures à sa tension d'alimentation (~~Le régulateur 3,3V alimentant le nrf24l01 n'à aucune influence sur les niveaux de tensions reçues sur sur MOSI, CLK.....IL n'agit que sur la broche Vcc du nrf)

Pour résoudre ce genre de problème lié à la connection de circuit intégrés alimentés sous des tensions différentes on met en place des 'adptateurs de niveaux logiques' pour les signaux .

Leptro un peu plus haut a évoqué cette question des niveaux de tension appliquée aux entrées de signaux.

Tu n'envoies pas plus de 5V sur les entrées Dx et Ax d'une carte Uno, Mega...(régulateur 5V sur la carte Arduino)
Faire de même avec le nrf24l01 et son régulateur 3,3V = ne pas envoyer plus de 3,3V (Il en sort 5 sur les sorties Dx d'une carte Aduino Uno, Mega.....)

On est d'accord actuellement uniquement la broche vcc du nrf24l01 est alimentée en 3.3v en revanches les autres broches sont reliées directement à celles de l'attiny qui lui est alimenté en 5v.

Donc si je comprend bien, l'ensemble des broches du nrf24l01 doivent recevoir uniquement du 3,3v max.
Qu'est ce que des adaptateurs de niveaux logiques?
Je ne peux pas utiliser le même régulateur que celui qui sert pour l'alimentation de la broche vcc pour l'ensemble des autres broches?
Et ce que je ne comprend pas, c'est qu'avec un Arduino Uno il n'y a pas de problème en utilisant le 3v sur le vcc.
Exemple: https://www.elec-cafe.com/wp-content/uploads/2015/12/nRF24L01_DS18B20_Arduino_UNO_RX_Elec-Cafe.png

Donc si je comprend bien, l'ensemble des broches du nrf24l01 doivent recevoir uniquement du 3,3v max.
Qu'est ce que des adaptateurs de niveaux logiques?

Oui c'est ça (la doc donne 3,6V comme maximum toléré, voir le message #3)
Adaptateurs de niveaux, içi par exemple chez Adafuit

~~L'exemple du blog ne respecte pas les recommendations du fabricant du nrf24l01, il peut par chance 'tomber en marche' !! ~~On trouve fréquemment sur le web des montages 'vite faits' , non reproductibles par manque de prise en compte des conditions d'utilisation des composants.

Le problème c'est que je veux intégrer le tout sur un pcb

Désolé !!!!
A partir de mon message #5 je suis parti sur l'idée fausse (influence ESP8266 !!) que le nrf24L01 ne supportait pas des signaux 5V sur ses entrées.......FAUX vu l'extrait de notice technique intégré dans mon messsage #3
Le nrf24L01 accepte de recevoir (CLK, MOSI,....) des signaux 5V
Pour la compréhension des échanges je laisse en place mes bétises.....

Oui en effet, j'ai un composant 5v ( un relais ) et j'utilise un régulateur 220v - 5v.
Ce que je peux faire c'est de mettre un régulateur 5v -3.3v devant l'attiny afin que toute les broches soit en 3.3v et prendre le 5v de la sortie du régulateur pour alimenter le relais ?

Mais ce que je comprend pas c'est pourquoi il n'y a aucune soucis avec un Arduino Uno en utilisant ce branchement

Ce montage comme celui du blog précédent sont OK (signaux 5V , alimentation du nrf en 3,3V)
Encore désolé pour mes 'divagations' ci dessus (messages #5 et #7)

Le seul point faible de ces montages réside dans le fait que les niveau hauts des signaux sortant du nrf (MISO par exemple) sont un peu faibles pour les entrées logiques d'un AT alimenté en 5V . Dans un montage commercial on mettrait dans le sens nrf -> AVR un adaptateur de niveau pour rehausser les niveaux hauts bien au dessus de VCC/2

Une idée dans ce cas d'où peut provenir le problème :wink:

Quel problème ? (je suis un peu perdu après ces méandres... :wink: )
Le problème initial de ton fil de discussion survenait quand le nrf etait alimenté en 5V.
On a vu que c'était interdit. Maintenant qu'il est alimenté en 3,3V que se passe-t-il ?

Non ce n'est pas ça le soucis
Dans tout les cas le nrf24 est alimenté sur le vcc en 3.3v grâce à un régulateur type LM1117 .
Lorsque le montage présent ici est alimenté en 5v le nrf24 ne reçoit pas et lorsque le montage est alimenté en 3v aucun soucis

Tout à fait exact al1fch. J'allais corriger mais ta correction arrive avant que je clique sur "Post".
Je confirme : le NRF24L01 est parfaitement tolérant au 5V sur ses entrées logiques.
Je fais ça pratiquement tous les jours. MYSENSORS et DOMOTICZ oblige ...
Donc Ok pour le régulateur 3.3V, mais aucun besoin d'adaptateur de niveau.
Sur ce schéma d'une prise connectée que j'ai développé vous pouvez le constater : c'est direct.

Pas de soucis, 5V c'est cool, ça passe.

alb12 je ne parviens pas à accéder à ton lien. J'aurais aimé jeter un coup d’œil.

@+

Si le signal d'entrée > 3.6V, VDD doit être entre 2.7V et 3.3V (datasheet page 20, table 12) donc idéalement 3V.

La solution la plus simple serait de mettre tout en 3.3V.

Certainly NOT. Only for power supply.

Désolé, j'ai oublié que j'étais sur le forum français.

Certainly NOT quoi?

Un point sur les niveaux logiques auquel il faut faire attention, j'en parle en connaissance de cause car je me suis fait avoir moi aussi.

Pour des signaux digitaux tout bête le seuil de déclenchement des entrées de l'avr sont approximativement centrées sur Vcc/2 avec 0,5 V d'hystérésis, donc du 3,3V en entrée cela passe sans difficultés.

MAIS
Pour les signaux issus des blocs d'électronique numérique internes aux microcontrôleur : I2C, SPI la norme est la norme CMOS (niveau bas <= 0,8Vcc; niveau haut >= 0,8 Vcc.

  • Il y a toujours de la perte, les niveaux que délivre un circuit alimenté sous 3,3V sont toujours légèrement inférieurs à 3,3V, idem pour le 5V bien évidement,.
  • Le 3,3V comme le 5V sont donnés à +/- 5% .
  • Un circuit CMOS peut être pil poil à la limite de la norme ou avoir une certaine marge --> cela ne dépend que du lot de fabrication.

Tout cela fait que des schémas trouvés sur internet peuvent être des schémas qui sont tombés en marche par le plus grand des hasards.

Dans les circuits intégrés la dispersion de fabrication est souvent de 10 ou 30% entre les différents lots de fabrication.
Mais à l'intérieur d'un même lot la dispersion n'est que de quelques petits %.
C'est pour cela que valider un montage avec des composants provenant du même sachet n'est qu'illusion.

Je partage l'avis qu'il faut des adaptateurs de niveaux.
Si tu veux utiliser le SPI avec des fréquences élevées il me semble préférable de choisir, maintenant que cela existe à pas cher, un adaptateur de niveaux a circuit intégrés dédié plutôt que les premiers modèles sortis à transistors discrets.