ChromeOS microcontroller development

Started by earthtonesaudio, January 25, 2013, 07:18:53 AM

Previous topic - Next topic

earthtonesaudio

I just got one of the ARM based Chromebooks and it's pretty fun... but the i/o is a bit limited at the moment.
For example I can do USB storage or HIDs but there's no serial modem to be emulated that I know of.  For now at least, I would prefer not to install Ubuntu on it.

There are the alternative serial input methods such as Bluetooth, IR, audio... maybe I'll go that route.
There's also the possibility of using a device that supports drag-drop programming such as the Mbed line.

Anyone know of other ways to get code to a micro from what is essentially a browser?

earthtonesaudio

Well, after trying several other methods I ended up dual-booting Ubuntu 12.04 and ChromeOS on my ARM Chromebook.  After an apt-get update/upgrade I installed Arduino from the Ubuntu store.  Followed the instructions (have to enable serial and reboot the system once) and now I am finally able to program a microcontroller from my Chromebook. 

Finally for convenience I put some aliases in the respective .bashrc files in both OSes so I can reboot into the other OS quickly.

Next I'll attempt to install MPLABX and do some PIC stuff.  Fingers crossed.

tommy.genes

I don't know what - if anything - Chrome OS and Android have in common, but I just bought an IOIO-OTG to develop with my Android tablet (HP Touchpad with Cyanogenmod 9). I had tried to get an Arduino UNO to work with the Android with only limited success, but I found this tutorial that describes using the IOIO-OTG specifically with Processing for Android, which is the only dev environment I'm familiar with right now. Maybe I'll get into Eclipse someday.

-- T. G. --
"A man works hard all week to keep his pants off all weekend." - Captain Eugene Harold "Armor Abs" Krabs

earthtonesaudio

They're both Linux based, but beyond that I have no idea.  That IOIO-OTG is pretty cool.

Minor update:
I tried to install MPLABX... no dice.  Attempting to execute the install script throws a syntax error something like "(" unexpected
Followed Microchip's workaround instructions - no change.
Attempted installing Sun's JRE6 just in case... still no change.
The next day I lost Unity from Ubuntu.  I had the desktop background and access to the system settings UI, but no app launcher or whatever the Start Menu thing in Ubuntu is called.  I'm not very good with the CLI so today I wiped the stateful partition (again) and will try more tonight.

slacker

If you can't get MPLBX to work there's other lighter weight IDEs that will work on Linux Arm machines, I gave geany a try using SDCC for a compiler, although I have to admit I ended up going back to MPLABX on my i86 machine because it was all nice and integrated and just worked.

If you're using a PICkit programmer the command line tools compile and work fine on Arm processors.

earthtonesaudio

Thanks for the info.  I do have a PICkit programmer; will check out geany/SDCC.
My suspicion is that the MPLABX install script is failing because the file system on the ARM device is not what it's expecting.  I'll try to verify on a VM this week, and if it works there I will go into the install script sometime later and see if I can fix it.

As an aside, on the ARM Chromebook there is about 10 Gig of free space on the SSD; Chrome OS occupies about 6 Gig.  This leaves not much room for dual-booting.
I see a high-capacity SD card in my future...

earthtonesaudio

#6
I have a satisfactory Arduino setup on my ARM Chromebook.  I used an Ubuntu chroot environment called crouton.  The chroot seems to require less disk space than ChrUbuntu.  Then I installed Arduino using
apt-get install arduino
At first the Arduino GUI would run fine, but I could not set the serial port unless I ran it as root.  Not really acceptable.  Adding my username to the 'dialout' group, and/or doing a
sudo chmod 666 /dev/ttyUSB0
fixed it.

I'm not enamored of MPLABX so much, even on Windows 7, so I won't be trying to force it to work on the Chromebook.  I think turning my Arduino into a serial PIC programmer and using geany/SDCC might turn out to be the lesser hassle!


I made a brief how-to document for this here.

sjf

I found your great document "Microcontroller Development on Samsung (ARM) Chromebook" and am able to follow along just fine except for one point that I am hoping you can help me with....

I am at the point where I am trying to get the arduino to talk to the computer via the USB drive... I see in your directions to CHMOD 666 /dev/ttyUSB0 but that device doesn't exist.

I have upgraded the firmware (in development mode)... as suggested.

I am so close... but so far away....

Would you be willing to help me or point me in the right direction? I would really like to use the Chromebook as my dev environment for the Arduino....

BTW - when I do connect my Arduino (Diecimila) to the USB I do get the green LED to light.. so I know there is power.
I have even tried the USB 3 port....


hmmmmm...

I am perplexed.

Thanks again in advance.

earthtonesaudio

Hm, maybe it's showing up as a different name.

Try the command 'ls /dev' before and after plugging in the Arduino.  After should have one more thing listed, and that is the device you want.

If the output of 'ls /dev' is the same before and after plugging in the Arduino, then for some reason the OS is not recognizing the device, and I don't know what to tell you.

Digital Larry

I'd be pretty stoked if I could run Eclipse and Subversion or Git on a Chromebook.   8)
Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

earthtonesaudio

@Larry, crouton is the key to unlocking the Chromebook's potential.  There are other options (Chrubuntu, and other non-Ubuntu OSes are out there) but crouton works for me.

Once you have Ubuntu on there, a lot of programs can be had via apt-get.

Sometime after I wrote that howto I installed Netbeans for a class with Java assignments.  I recall some issues with getting the JDK to install but eventually it worked.  I never got Eclipse to work though.

Currently I'm using GHC and developing in Elm.  I don't need a graphical Linux so I used the cli-extra flag when making my chroot.  I use Vim and Git on a regular basis.

antonis_k

Hello there.

We are codebender, an online browser-based IDE for all Arduino users, makers and engineers out there.
We provide you the ability to write, save, access and if you wish share your code from everywhere.
Just install our Chrome app or Firefox plug in and start programming!

But maybe you are aware of all these so why we bother you? What is going on?

You own a Chromebook and you always wanted to program your Arduino with it?
This is what we were working on for the last months!

codebender can now support Chromebooks!
Come "play" with your code on www.codebnder.cc and find out the potentials we can provide to you.
We preferred to keep silent but now it is time to say out loud : Your chromebook is supported!

Sorry for bothering and thank you for reading.

Antonis from the codebender team

rotylee

i was wonder if this could be a possible platform for the
HTML 5 java script and a few other libraries application
also if you look at the forum for samplerbox in the raspberry pi post
that project has been made pc compatible.
uses python 2.7