Communication réseaux wifi type ADHOC non détecté - module RedFly

Bonjour,

Je participe a un projet qui consiste a contrôler une série de LED via une page HTML en passant par une connexion wifi. Les étapes sont les suivantes :

  • Lors de la mise sous tension le module Redfly émet un réseau wifi adhoc
  • On établit une connexion au réseau Adhoc puis on entre les paramètres de son réseau wifi personnel (box internet) via l'adresse IP de la carte Redfly
  • On passe ainsi en mode infrastructure et lors des prochaines mise sous tension la connexion a la box est établie automatiquement.

Le problème est que selon les endroits, le réseau Adhoc n'est pas détecté; il est détecté uniquement dans des zones où il n'y a pas ou peu de réseaux wifi (école, champs,...) mais en zone "densement peuplée" aucun réseau correspondant a celui défini dans les paramétrage du code n'apparait et seul les réseaux wifi des box a proximité sont détectés.

A priori il ne s'agit pas du code puisque dans certains cas j'arrive a me connecter au réseau Adhoc, la seule réponse que je vois est qu'il y a trop de réseaux wifi a proximité. Quelqu'un aurait-il une solution a m'apporter ?

PS: Je ne sais pas si c'est le bon endroit où poster mon problème et si c'est le cas je m'en excuse.

Salut,

Typiquement un problème de canal wifi. Quand ça ne marche pas, prenez un pc et utiliser un logiciel de scan wifi pour déterminer le canal le moins encombré. Reprogrammer votre wifi avec ce canal et testez, ça devrait marcher

Salut,

Merci pour votre réponse. J'ai changé le canal de mon réseau wifi (domicile)mais je ne vois toujours pas le wifi du Redfly, serait-ce celui du Redfly qu'il faut changer et si oui comment procéder ?

Oui évidemment sur la redfly, c'est celui de la redfly que tu essayes de capter dans un premier temps, pas celui de ta box

OK merci pour cette réponse je vais tester

J'ai modifié le canal WIFI du module redfly mais je ne vois toujours le réseau wifi adhoc

Voila mon code qui permet de créer le réseau adhoc sur le canal 13 :

///////////////////////////// Initialisation ////////////////////////////////
void initialization (void) {
uint8_t ret;
loadConfig();
//init the WiFi module on the shield
ret = RedFly.init(); //LOW_POWER MED_POWER HIGH_POWER
//if (!ret) {
RedFly.scan();
adhoc = ret = RedFly.join(WiFiConfig.ssid, WiFiConfig.pwd, INFRASTRUCTURE);
if (ret) {
char network[16];
//char FREE_MARTINE[16]; //Initialisation wifi domestique
sprintf(network, "TestNetwork%d", WiFiConfig.id);
ret = RedFly.join(network, IBSS_CREATOR, 13); //channel changed from 10 to 13
}
if (!ret) {
currentIP = adhoc ? serverIP : WiFiConfig.addr;
ret = RedFly.begin(currentIP, gateway, netmask);
}
if (adhoc) { // only open DHCP/DNS ports in adhoc config
// listen for DHCP messages on DHCP_SERVER_PORT (UDP)
hDHCP = RedFly.socketListen(PROTO_UDP, DHCP_SERVER_PORT);
// listen for DNS messages on DNS_SERVER_PORT (both UDP and TCP on the same port)
hDNSTCP = RedFly.socketListen(PROTO_TCP, DNS_SERVER_PORT);
hDNSUDP = RedFly.socketListen(PROTO_UDP, DNS_SERVER_PORT);
}
// listen for UDP messages on port 80 (to test echo)
hHTTPUDP = RedFly.socketListen(PROTO_UDP, HTTP_SERVER_PORT);
// 10 blinks on error, 5 blinks on AP connection and 3 blinks on adhoc connection
blink(LEDPIN, ret ? 10 : (adhoc ? 3 : 5));
}

Si quelqu'un a une idée ?

wifi adhoc.txt (1.35 KB)

bonjour,
il manque pas mal de bouts de code.
as tu essayé le github?

Mais le scan donne quoi ?