J'ai un module wifly RN-171 connecté à un microcontrôleur. J'utilise le protocole UDP pour communiquer avec le module. En outre, j'utilise la fonction de paire automatique UDP du microprogramme pour définir l'adresse IP de l'hôte. Dès que le module reçoit un paquet UDP, il définit l'adresse IP de l'hôte à l'adresse IP à partir de laquelle il a reçu les données. Maintenant, cet ip hôte ne peut pas être changé sans entrer dans le mode de commande.Configurer le module Wifly pour recevoir les paquets UDP
Je souhaite que le module se comporte de la manière suivante: Chaque fois qu'il reçoit un paquet UDP, il met à jour l'adresse IP de l'hôte vers l'adresse IP d'où provient ce signal.
En outre, je peux utiliser le protocole TCP mais il ne permet qu'une seule connexion à la fois. Un autre problème que j'ai rencontré en utilisant le protocole TCP était que si j'essaye d'initier une deuxième connexion TCP avec le module, non seulement il refuse la deuxième connexion mais bloque également la première connexion stable. Même si le second démarrage de la connexion ne bloque pas le module et qu'il est simplement refusé, je serai prêt à travailler avec TCP.
J'ai fait beaucoup de recherches sur le web concernant ce problème mais comme ces modules ne sont pas largement utilisés, ils ont un support très limité.
Cependant, j'ai trouvé une meilleure façon de connecter plusieurs clients avec le module. Maintenant, j'utilise le protocole TCP mais dans une approche différente. Fondamentalement, je veux envoyer des données à partir d'un smartphone dans mon projet. Ainsi, lorsque l'application doit faire quelque chose avec le module, elle initie une connexion TCP, authentifie la connexion avec le mot de passe configuré dans le module, envoie et reçoit les données, puis ferme immédiatement la connexion. Comme l'entrée de l'utilisateur est prise avant la création de la connexion, tout ce processus prend environ 50-60ms. Ressentez-vous que c'est une solution stable pour gérer ce problème. – kayveesin
C'est en effet une solution viable si vous n'avez pas à envoyer et recevoir des données de vos appareils en même temps. Si votre application peut gérer les retards de données dans le canal, il est parfaitement raisonnable que d'autres périphériques effectuent des tentatives de connexion (au cas où des collisions de demande de connexion se produisent) jusqu'à ce que tous les périphériques aient envoyé les données requises. Je n'ai pas encore eu de problèmes avec de nombreuses connexions consécutives non simultanées. – wolf9000