Est-il possible d'exécuter le logiciel NXT-G sous Linux en utilisant Wine?


19

Je voudrais utiliser Lego Mindstorms NXT-G, mais je n'ai pas un accès régulier à un ordinateur exécutant Windows ou OS-X. J'ai essayé d'utiliser le logiciel officiel sous Linux en utilisant Wine, mais il ne s'est même pas installé. Je me demandais si quelqu'un avait mieux réussi, et si oui, comment cela a été fait, ce qui fonctionne et ce qui ne fonctionne toujours pas.

Je suis conscient qu'il existe d'autres options pour programmer la brique, et que certaines (la plupart?) De celles qui fonctionnent sous Linux, cependant, elles ne sont pas autorisées dans des compétitions telles que FIRST Lego League, ce qui les rend un peu moins adaptées à mon objectif.


2
Je crains que vous n'ayez besoin d'une machine virtuelle Windows complète ou quelque chose, mais ce n'est pas vraiment quelque chose que je peux vous aider.

2
@mfg: Pourquoi ne pas demander à Ubuntu ou Unix / Linux, ou ... ici? Tous ces autres sites recommanderont probablement les autres environnements de programmation - l'OMI, l'obligation de rester dans les règles de concurrence Lego standard, en fait une question raisonnable pour ici.

1
@muntoo avez-vous une référence pour que NXT-G soit basé sur Flash? Cela me laisse perplexe.

2
@pcantin: Par exemple, les règles de la FIRST Lego League indiquent clairement: " Le robot ne peut être programmé qu'en utilisant le logiciel LEGO MINDSTORMS, RoboLab ou NXT-G (toute version). Aucun autre logiciel n'est autorisé. "
Jan Hlavacek

1
@Jan: Ouais! Il y a une autre personne Linux uniquement ici! :) Oh, et consultez mon blog (dans mon profil) pour les ports Linux des logiciels liés à Lego. (Mais pas NXT-G, désolé.)
retracile

Réponses:


4

J'ai fait quelques recherches et trouvé un fil qui prétend que les langages de programmation devraient fonctionner sous Wine. Quelqu'un sur le même fil a dit qu'il l'a exécuté dans VirtualBox au lieu de Wine.

Cependant, le logiciel Mindstorms est répertorié dans les données d'application de Wine comme étant des "ordures". Je pense que cela signifie qu'il ne fonctionne pas du tout.


1
Je peux confirmer que NXT-G fonctionne dans VirtualBox. J'ai utilisé cela il y a plusieurs années, et le seul problème que j'ai eu à chaque fois que le NXT était débranché, la machine virtuelle perdait la propriété du périphérique USB, et il a dû être récupéré après avoir à nouveau connecté le NXT. Ennuyeux, mais pas un showstopper. Les nouvelles versions de VirtualBox ont une bien meilleure prise en charge USB, il est donc très probable que le problème n'existe plus.
Jan Hlavacek

Les problèmes liés à l'utilisation d'une machine virtuelle sont les suivants: vous devez d'abord avoir une machine plus puissante, car vous exécuterez deux systèmes d'exploitation en même temps, deuxièmement, vous aurez toujours besoin d'un CD Windows pour l'installer sur la machine virtuelle. J'avais l'habitude d'avoir un CD XP qui traînait que j'utilisais juste à cet effet particulier, mais je l'ai égaré il y a quelques années.
Jan Hlavacek

Il semble que je doive accepter cela comme la bonne réponse. Il ne semble pas y avoir de moyen d'exécuter NXT-G sous Linux (sans utiliser de machine virtuelle).
Jan Hlavacek

2

Voici ce que j'essaierais. Vous pouvez démarrer une instance MS Windows Micro (machine virtuelle / VM) sur Amazon Web Services (AWS). Une micro-machine virtuelle AWS ne coûte rien si vous avez Linux, mais comme vous avez besoin de Windows, c'est 0,03 $ par heure. La liste des prix est sur cette page . Si la micro-instance est trop petite ou trop lente, vous pouvez en utiliser une plus grande (une Extra Large coûte 0,96 $ / heure).

Vous pouvez y installer le logiciel LEGO et travailler à distance. Pour éviter d'installer le logiciel LEGO à chaque fois, vous pouvez même créer votre propre machine virtuelle et la relancer à tout moment.

Le seul inconvénient que je vois est l'IO entre la VM et la brique physique LEGO NXT. Cela pourrait probablement être résolu en créant un port proxy sur votre ordinateur personnel via lequel le logiciel LEGO sur la machine virtuelle pourrait communiquer avec la brique. Cela doit être testé car je n'ai pas de NXT. Si cette partie est trop compliquée (ou impossible), vous pouvez rechercher d'autres moyens de télécharger le code sur le NXT à partir de la machine virtuelle Windows.

Si vous n'avez jamais joué avec AWS, je vous suggère de commencer par une micro-instance Linux (par exemple Ubuntu). Comme cela ne coûte rien, c'est un bon moyen d'expérimenter comment tout cela fonctionne.


1

Le nouveau logiciel Ev3 est disponible en téléchargement et prend en charge la programmation des briques NXT 2.0.

Cependant, comme NXT-G, il ne prend en charge que OSX et Windows. Il peut s'installer sous Playonlinux / Wine, mais ne démarre pas en raison de dépendances sur Mono 4.3 et d'autres dépendances.

Je peux comprendre pourquoi FLL voudrait limiter l'utilisation de la cohérence logicielle extérieure, mais je souhaite qu'ils envisagent quelque chose comme Enchanting si personne n'est en mesure de résoudre les problèmes liés à l'exécution d'Ev3 sous Wine.


J'espérais, puisque la nouvelle brique exécute réellement Linux comme système d'exploitation interne, qu'ils prendraient également en charge Linux avec le logiciel Ev3, mais, apparemment, ils ne le font pas. Dommage.
Jan Hlavacek du

@JanHlavacek - Il est également intéressant de noter qu'il fonctionne toujours sur National Instruments, mais l'interface utilisateur semble être construite sur silverlight / mono. NI peut fonctionner sur linux et il existe un mono natif pour linux écrit par Miguel de Icaza, donc le potentiel est là, mais cela nécessiterait une réécriture. J'ai envoyé une lettre à Lego pour demander cela et je pense qu'il y a peut-être un fil de discussion sur le forum des ambassadeurs Lego qui en discute, donc peut-être y aura-t-il une réponse à un moment donné de Lego eux-mêmes.
marco
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.