Projet "Beacons scanner" problème lié au module Bluetooth RN4871

Abravius
jeu, 01/17/2019 - 08:25
Bonjour à tous,
Comme le titre l'indique, je suis en train de développer un projet permettant de scanner des Beacons placés dans certains périmètres à l'aide d'un RN4871 et d'exécuter certaines commandes lorsque l'un d'eux est détecté.
Avant toutes choses, pour pouvoir mieux comprendre ce que je dois développer, je vous mets ci-dessous les fonctionnalités demandées pour le projet provenant du cahier des charges :
La mise en place d'un menu afin de régler les différentes options présentes ci-dessus est déjà fait et fonctionnel.
Il reste maintenant le module Bluetooth RN4871 à mettre en place. Après avoir pris connaissance de la datasheet de ce composant, je l'ai monté comme mentionné sur celle-ci.
J'ai monté le module de la manière suivante :
Le problème, c'est que le module ne répond à aucune commande envoyée sur celui-ci (je communique en RS-232 avec un baud de 115200). Ou alors, il fonctionne pendant un certain temps et ensuite plus rien même après un redémarrage du circuit...
Cela fait maintenant trois modules Bluetooth devenu non-fonctionnel et je ne comprends toujours pas la cause de ce problème ! Est-ce un problème de montage ? Je ne sais pas ! Je suis totalement perdu...
Il faut ajouter que le problème n'est à mon avis pas Software mais plutôt Hardware, car, quand le module fonctionne correctement, une LED branchée à la PIN correspondante à cette fonction doit clignoter. Ce qui n'est pas le cas pour moi.
J'ai déjà effectué de nombreuses recherches sur internet, sans résultat. C'est pour cela que je créer ce sujet sur ce forum qui m'a l'air à la hauteur pour m'aider à régler mon problème !
D'avance merci !
Je vous mets ci-dessous le lien de la datasheet du circuit ainsi que du document contenant toutes les commandes :
- Datasheet : http://ww1.microchip.com/downloads/en/DeviceDoc/50002489C.pdf
- Liste des commandes : http://ww1.microchip.com/downloads/en/DeviceDoc/50002466B.pdf
Abravius
lun, 01/21/2019 - 17:11
Mauvaise manipulation j'ai supprimé le message sans faire gaffe en voulant en supprimer un autre... Si vous arrivez à le restaurez volontier
Abravius
lun, 01/21/2019 - 17:03
Oui désolé, j'étais un peu vexé de ce que tu m'avais répondu la première fois. Car je m'attendais à un conseil et non pas à une réponse de la sorte.
Du coup je m'en excuse si tu l'as mal pris ce n'était pas mon intention !
Au sujet de ma solution, j'attends d'avoir de meilleurs résultats lors de mes différents tests. Car oui le module Bluetooth fonctionne mais je n'arrive pas encore à communiquer correctement avec lui en RS-232 (il reçoit les données provenant de mon PIC mais mon PIC n'arrive pas à lire celles provenant du module...)
C'est pour cela que j'attends d'avoir une solution 100% fonctionnelle avant de la partager avec vous tous.
Du coup, bonne soirée à toi et à la prochaine :) .
Walter
dim, 01/20/2019 - 11:48
Cool que tu es trouvé une solution, n'hésite pas à la partager.
Cela peut toujours intéresser quelqu'un.
Walter
lun, 01/21/2019 - 13:02
Démontrer peut être!
Cela démontre uniquement que l'on a une façon très différente de respecter les autres.
Pour moi les deux messages, sont en total oppositions.
Walter
jeu, 01/24/2019 - 09:05
Sûrement, je n'ai pas tes capacités en la matière, mais on ne peut pas tout avoir, quitte à choisir, je préfère le respect :)
Abravius
mar, 01/22/2019 - 09:42
J'ai trouvé la cause de mon problème de communication !
En fait j'ai simplement omis d'écrire enable_interrupts(INT_RDA); dans mon code... Et pensant bien sûr que c'était Hardware je n'avais pas regardé ma programmation jusqu'à aujourd'hui.
J'ai donc désormais un module Bluetooth fonctionnel et une bonne communication !
Pour ce qui est de la manière dont jai monté le RN4871(module Bluetooth) j'ai procédé ainsi :
J'ai suivi exactement ce que le fournisseur propose dans le schéma mis à disposition dans la datasheet.
Dès lors le circuit fonctionne correctement !
Mais d'après Microchip, le transistor Q1 sert en fait à protéger contre les inversions de polarité. Mais la chose que je ne comprends pas ce qu'il s'agit ici d'un MOSFET CANAL N, donc si un signal logique à "1" est placé sur la grille de celui-ci il conduit. Alors j'arrive à la déduction qu'il ne protège pas des inversion de polarité et qu'il fallait placé un CANAL P à la place. Peut-être que je me trompe, à vous de vous faire votre propre opinion !
Pour ce qui est des résistances R3 et R4, elles servent uniquement à limiter le courant de la communication car une différence de 0.6V ce fait remarquer entre la tension d'alimentation du module Bluetooth (2.7V et non 3.3V dû à la diode du transistor MOSFET) et la tension d'alimentation du PIC (3.3V).
de la sorte je limite le courant à 2.7mA
Udif = Upic - Umod = 3.3 - 2.7 = 0.6V
R = 220Ω
I = Udif / R = 0.6 / 220 = 0.0027 A --> 2.7mA
Certes, peut-être que ces résistances ne sont pas nécessaire, mais par précaution je préfère les placer pour ne pas griller un autre module... Sachant qu'il y en a déjà 5 qui sont passés à la poubelle...
Si vous avez des questions ou des remarques je suis à votre disposition !
Bonne journée
Walter
mar, 01/22/2019 - 18:32
pour ton MOSFET NPN, si tu as le VCC sur la grille, tu as le GND sur le drain.
Donc je suppose qu'il y aura aucun courant qui entra dans le drain, de plus Vgs étant sûrement négatif, le courant ne doit pas pouvoir circuler dans le transistor?
Merci pour ton partage
Abravius
jeu, 01/24/2019 - 10:13
C'est une bonne question, si nous inversons la polarité il y aura le VCC sur la grille donc le transistor sera "ouvert" et étant donné que la masse sera sur la drain, du courant pourra circuler en passant par la source de celui-ci, donc j'arrive à la conclusion que le courant peut circuler en inverse est provoquera la destruction du module.
Je te mets la datasheet du transistor que j'utilise en-dessous :
https://www.onsemi.com/pub/Collateral/FDN357N-D.PDF
Après je peux certainement me tromper, je suppose que Microchip savait ce qu'il faisait et que ce montage à bel et bien une utilité mais laquelle je ne sais.
Je t'en prie pour le partage !