Pages

Tuesday, August 19, 2014

Lego EV3 in Linux!

Being a science teacher I'm always looking for cool new toys and ways to incorporate STEM and get my students to learn, without realizing they are learning. I had some back to school meetings today, and discovered that the EV3 Lego Mindstorm Kits I requested had arrived. I was about as happy as a kid on their birthday. I ripped open those packages so fast and started playing...then I ran into my first issue. My science lab is Linux based...all my machines are Linux. How the heck am I going to get these things connected?

Being the tech dork I am, I found a clunky workaround, a slick but complicated workaround, and one other possibility that will probably work- it hasn't been tested yet.

The Clunky Workaround

I installed the newest version of virtualbox with the newest extension pack, and guest additions. Installed Windows 7. (I activated the aero view of course. I mean if I have to use windows, I can at least make it look a bit nicer, it's not as pretty as Linux, but it will suffice). I added my host Linux user to the vboxuser group, installed libusb-0.1 and libusb-dev, plugged in the EV3 brick via USB, and voila, the windows guest virtualbox grabbed the device. I downloaded and installed the EV3 software and I was in business. It's clunky, because that means I need to have that available for my students on all 24 Linux mint 17 XFCE machines in my science lab :(
Again which means, I need install virtualbox on all those machines, and clone the virtual OS 24 times.

The Slick Workaround.

What's wrong with teaching kids how to write Java? I installed the Lejos NXJ EV3 software on my Linux machine and made a bootable USB (not an SD) as the directions suggest. Only because I didn't' have an SD card around. I followed the tutorial and I was able to program my EV3 brick via Java. That should be a great addition for my students when they are ready to try some coding. It's a slick workaround, because I you end up flashing the EV3 brick with java, but you wipe the Linux OS that is there. (There has got to be a way to get a Linux machine to talk to the Linux OS on the brick).

Finally the not yet tested work around.

It appears as though the USB and SD ports on the brick will mount and access files. All I need is to get the Lego software running in Linux, either through WINE (which I've found out that it probably won't work) Or, create an XP virtual machine with the software. That's right, XP. Why XP? Because I don't' need to use up or buy site licenses to get the machine to run and allow students to access the software. I can clone the virtual system without any worries. Once I download the XP iso, install it on a virtual machine, grab the Lego software, have students program and save it to a USB and plug it into the brick to run. This seems the easiest, but hasn't been tested yet. Again, since XP isn't supported anymore, I can run it without the hassle of a license, since there aren't any more security updates, I can ignore the license reminders.

Sorry for the length of this post, but there might be other Science teachers out there with robotics kits and Linux labs running into similar frustrations. So I thought, I'd share my success story thus far.
Enjoy.

Coming soon...more on Classroom for Google, and integrating Google Calendar.