I know there is no official way to program NXT/EV3 on a Chromebook.

But a Chromebook can have Ubuntu installed via Crouton in developer mode.

So, is there a relatively painless way to program NXT/EV3 on Ubuntu?

up vote 8 down vote accepted

Update Dec 2016

There is now an app for chromebooks on the chrome store:

https://chrome.google.com/webstore/detail/lego-mindstorms-education/jhnhfnolmcleankdkhfklakpchnccipg?hl=en-US

I have used it to program EV3 version of the bricks. It connects via bluetooth to the EV3 brick (I don't think USB is even supported). The bluetooth connection can be buggy at times and I've found myself having to re-pair the brick.

The chrome app saves programs in a format (.ev3m format) which is not compatible with the Mac/Windows desktop versions of the programming app. Attempts to load programs written on Mac/Windows (.ev3 format) will not load in the app. Suffice to say transferring programs between a chromebook and the desktop version of the EV3 programming software is difficult and perhaps not possible. There may be a way to download the program from the chrome app onto the brick and then pull the software using the 'Memory Browser' tool into the desktop version but I haven't had time to look into it.

My chromebook has only 2 GB of RAM and the program sometimes struggles to load so I recommend at least 4 GB of RAM in your chromebook.

There is a pretty good Q/A article here:

https://education.lego.com/en-us/middle-school/explore/c/ev3-chromebook-faq

Your best bet[1] for EV3 is ev3dev.

For NXT, you should be able to get BricxCC running on Linux.

You can also checkout leJOS and MonoBrick. There is a good change you can get either one of those working on Linux as well.

[1] As a core contributor to ev3dev, this may not be entirely objective ;-)

  • ev3dev isn't exactly a Mindstorms IDE, but the Linux link is interesting, thanks. It's disappointing that Windows is still involved though. – vt. Jan 13 '15 at 20:12
  • 1
    Windows should not be needed for anything that I suggested. – David Lechner Jan 14 '15 at 1:57

See https://appdb.winehq.org/objectManager.php?sClass=version&iId=33517 for latest instructions.

I recently did some testing to get the EV3 software working on Linux using Wine, and actually got it to work! (The EV3 software can also be used to program the NXT) Here are the instructions:

$ sudo add-apt-repository ppa:wine/wine-builds

$ sudo apt-get install --install-recommends winehq-devel winbind libntlm0 ttf-mscorefonts-installer winetricks

Make sure the folder ~/.wine32 does not exist.

$ WINEPREFIX=~/.wine32 WINEARCH=win32 wineboot

Choose "No" on any prompts to download gecko or Mono

$ WINEPREFIX=~/.wine32 winetricks

Select the default prefix, and click OK

Select Install a "Windows DLL or Component"

Install all of the vcredist libraries, .NET version 4.0, and IE 8.

Select "Change settings"

Check ddr=gdi, and select OK (this fixes sections of the window turning white)

Click "Cancel" twice to exit winetricks

Download "IE8-WindowsXP-KB2936068-x86-ENU.exe" from the Microsoft website

$ WINEPREFIX=~/.wine32 wine '<location of folder with IE8-WindowsXP-KB2936068-x86-ENU.exe>/IE8-WindowsXP-KB2936068-x86-ENU.exe'

$ WINEPREFIX=~/.wine32 winecfg

In the libraries tab, add an override for "*urlmon.dll", making sure to include the *

Select the override just created, and click "Edit..."

Choose Native, and click OK

Click Apply, then OK

$ WINEPREFIX=~/.wine32 wine '<location of folder with mindstorms installer>/LMS-EV3-WIN32-ENUS-01-01-01-full-setup.exe' (or whatever the filename of the installer is)

Install the software.

Delete the .lnk file on the desktop, it is unnecessary and could cause problems

Double-click the launcher on the desktop.

I have not tested downloading to the brick yet, but creating a new project, adding a block, saving it, and reopening it works.

Hope this helps. If you have any problems or questions, let me know.

c4ev3 has an Eclipse CDT Plugin based on GNUARMEclipse so you can do your C/C++ Programming for the EV3 and upload/browse the filesystem without leaving Eclipse.

It works with the stock firmware/OS and comes with an API to access sensors/motors.

You can run it on Windows, Linux and OS X. Also compiles on FreeBSD but didn't test if it actually works.

If you don't want to use Eclipse, you can use the uploader (a simple CLI tool written in C) and the C API separately and integrate them into your build process. The uploader can also generate the menu entries for starting the programs on the EV3 menu, so using another IDE won't keep you from experiencing c4ev3's awesomeness [1].

Doesn't support NXT though.


[1] Might be biased because I wrote part of it.

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.