web-dev-qa-db-fra.com

Le logiciel Lego Mindstorms EV3 ne peut pas trouver de briques via WiFi

Mon logiciel Lego Mindstorms EV3 ne peut pas trouver la brique EV3 via WiFi. Ce qui est étrange, c'est que cela fonctionne dans une nouvelle installation de (X) Ubuntu dans Virtualbox sur cet ordinateur, même version. Ce que j'ai essayé:

  • Recréer le Wineprefix

  • Réinstaller Wine

  • Utilisation d'une connexion filaire et sans fil au routeur.

1
QwertyChouskie

C'est un pare-feu qui bloque les connexions de la brique. Le moyen le plus simple de résoudre le problème est de désactiver le pare-feu par Sudo service ufw stop, mais c'est une mauvaise idée en général. Au lieu de cela, vous pouvez configurer des règles à autoriser.

Je suppose que Lego Mindstorm envoie une demande de diffusion et attend les connexions entrantes de n'importe qui (de la brique dans notre cas) . Cela signifie que vous devez autoriser les connexions entrantes:

  • à partir d'une interface
  • en utilisant un sous-réseau
  • à partir d'une adresse IP spécifique
  • vers un port spécifique
  • en utilisant un protocole spécifique (c'est-à-dire http, https, ssh)
  • toute combinaison de ce qui précède.

Donc, une règle que vous pourriez utiliser est Sudo ufw allow from 192.168.0.6, puisque c'est l'adresse de votre brique. Mais je ne sais pas comment l'adresse est attribuée à la brique, si elle est dynamique, et voudriez-vous l'utiliser avec une autre (avec une IP différente) , donc le meilleur moyen serait probablement de trouver le port utilisé et de configurer une règle pour cela. Tout d'abord, désactivez temporairement le pare-feu (Sudo service ufw stop) , exécutez dans le terminal Sudo tcpdump -nni any src 192.168.0.6 and dst 192.168.0.6, et connectez l'application à la brique. Vous verriez une information sur les paquets allant entre votre hôte et la brique, le port est écrit juste après l'IP de votre PC, comme … 192.168.0.6.52382> 192.168.0.1 .8 Ensuite, vous pouvez utiliser:

Sudo ufw allow PortNumberYouGot # e.g. Sudo ufw allow 21

ou mieux encore est de n'autoriser qu'un sous-réseau spécifique:

Sudo ufw allow from 192.168.0.0/16 to any port PortNumberYouGot
1
Hi-Angel