Google Chromebook and Arduino IDE support

I just ordered a kit yesterday to start learning about arduino programming and had the same question when I realized chrome was its own operating system last night. Hope the linux fix works.

TL/DR: You can't use codebender to flash USB Arduinos from a Chromebook. However you may be able to flash an ethernet Arduino.

"chromebook doesn’t support NPapi plugins(aka you can’t use the USB flashing browser plugin). On the other hand you can write and compile code as usual and flashing through the network an Arduino Ethernet with Ariadne is also supported."

http://codebender.uservoice.com/forums/165703-general/suggestions/3386288-make-it-work-on-chromebook

The previous answer does give a way to make your -hardware- flash the USB Arduino, but you have to install Linux on your hardware.

I know this thread is a little old but just in case others are looking for this answer I thought I'd comment. I do all my arduino coding on my chromebook and can even upload sketches. To do this I use a script called crouton to install linux alongside ChomeOS so anytime I need to do something ChromeOS can't do I switch over with a short keystroke and open that application. It's very smooth and so far has been working great. Getting the IDE running was a bit tricky however so I made some instructions on what I did. You can see the full instructions on how to install crouton and then the IDE and then a few extra libraries and things you need to upload code in my blog post here:
Crouton:
http://ampere-sand.blogspot.com/2014/01/chromebook-programming.html
Arduino IDE
http://ampere-sand.blogspot.com/2014/01/installing-arduino-ide-on-chromebook.html
Hope this helps people get started on their chromebooks. I love mine!

darcoza:
I know this thread is a little old but just in case others are looking for this answer I thought I'd comment. I do all my arduino coding on my chromebook and can even upload sketches. To do this I use a script called crouton to install linux alongside ChomeOS so anytime I need to do something ChromeOS can't do I switch over with a short keystroke and open that application. It's very smooth and so far has been working great.

A friend of mine set this up with his chromebook; I've seen the crouton thing work well - he said he got the Arduino IDE set up and working on it as well, and loves it for developing Arduino projects! :slight_smile:

Is anyone still interested in this? I am considering writing an AVRDude-like program in pure HTML5/Javascript for starters so a Chromebook can load on hex files to an Arduino. Although this is not the complete package, it's a big hurdle apparently.

I have written ChromeOS USB serial applications before (actually, it works in any chrome browser incidentally). I assume that the Atmel App Note AVR068 "STK500 Communication Protocol" is what the Arduino serial port loader uses? Is there any other documentation out there?

While I have done extensive development on the Arduino platform from an end user and library perspective, I have not dove this deep into the bootloader.

I think there is still interest in this. I just bought a Samsung Chromebook 2 yesterday and this is the first thing I've tried doing with it.

Although I am also working on getting a more traditional Linux distro installed on it so if it turns out to be impossible to do MCU work on a Chromebook I will still have a sleek and sexy portable development system.

The main point is to hit the $150-200 special out of the box. Imagine the potential. I hope codebender takes a look at those chrome.serial API's.

This all being said, I am making good progress on bootloader flashing software for Chrome Browser/ChromeOS. STK500 is a terrible, terrible place.... But it'll work out eventually!

I have completed a serial bootloader called AVRChick for Chromebooks and really anything that can run Google Chrome as a browser. This is an "offline" app, which means you can be off the internet and run the app without any trouble.

It has very basic functionality, but you can load "blink.hex" onto an Arduino connected to USB. Or some other huge hex file. I am also going to add a "download" function so you can pull hex files off of Arduino's easily. I can also add a nice GUI to the various fuses.

While I do not think it is much of a problem, it does no hardware verification. Use at your own risk. Just as a sanity check, I loaded on a jpeg into flash of a 328, and nothing bad happened. It now requires there to be a semi-valid Intel Hex file so it will be difficult to inadvertently load on random data.

Now...the next big problem: writing and compiling sketches.

I see a couple of options:

  1. Create some sort of online API which ingests arduino sketches and outputs hex files

  2. Using Emscripten, compile the AVR-GCC toolchain into LLVM, then turn it into JavaScript and include it within a google chrome "offline" app. This is remarkably feasible. Static files can be merged into the output Javascript (there's an option for this), and objects, etc. can be stored in local storage. Stdio is one of Emscripten's core functions. I have never actually attempted this, but if jsmess was successful, this should be possible.

  3. Forget C++. Get an interpreter boilerplate, and jam in the tokenized user program directly after the interpreter in PROGMEM. Write some code to go find the user program.

Just one final update --

I now have a Chrome OS application that runs a local IDE, sends the sketch off for compiling on a remote server, and then takes the Intel Hex result and programs the Arduino locally. Takes just a few seconds for the round trip.

It does require Internet access for the Chrome App, but it works surprisingly well. Library support is very possible, but not written yet.

this new project might take a week or two to wrap up.

If you are interested, let me know, and I can set you up with a test account.

Rainyhere I am very interested as my PC is in the middle of dying on me.

myotheralt:
Rainyhere I am very interested as my PC is in the middle of dying on me.

It is now available on Chrome Store here:

I also pushed out an update this evening to support local file saving. Still a lot more to add...including error output from the compiler, library support, etc. but it will come over the next couple of weeks.

If there is a library you are interested in using, let me know, and I will make it available for the compiler.

Hi.

I'm interested in the AdaFruit libraries for chromeduino compiler. In particular, I would very much like the NeoPixel and LSM303 libraries. I'm using the AdaFruit FLORA platform.

Thank you very much for this very useful piece of software.

Best regards,

mbs

mitchmao:
Hi.

I'm interested in the AdaFruit libraries for chromeduino compiler. In particular, I would very much like the NeoPixel and LSM303 libraries. I'm using the AdaFruit FLORA platform.

Thank you very much for this very useful piece of software.

Best regards,

mbs

Okay, I will see what I can do this week.

This is fantastic! I can't tell you how happy I am that you decided to make this. I absolutely love my Samsung Chromebook 2 and use it for pretty much everything these days and this really does make it complete for me. Haha.

I look forward to all your future updates and hope that you'll continue with the project well into the future.

Thanks again!

carlosserious:
This is fantastic! I can't tell you how happy I am that you decided to make this. I absolutely love my Samsung Chromebook 2 and use it for pretty much everything these days and this really does make it complete for me. Haha.

I look forward to all your future updates and hope that you'll continue with the project well into the future.

Thanks again!

Okay, sorry for the delay. I added those libraries you asked for. You should be able to include.

If you have any issues, let me know. You can also contact me direct: spaceneedle at gmail dot com.

I hope to keep supporting this software into the future. I am a chrome OS user myself and I am getting very close to releasing the next update I am sure everyone is wanting: multi tab support and library support.

This one still sounds promising, if they could ever get Chromebook support working. There are other apps out there that could upload the code to the Arduino, I just wanted it to let me write and compile the code and I'd find a way to get it the Arduino, but still a no-go... 2 years and the popularity of this platform (Chromebooks) and still no support leaves me to think the developers at codebender.cc are not really in touch with the potential users out there.

johnwasser:
Try codebender.cc:

"online development & collaboration platform for Arduino users, makers and engineers"

"Code: Awesome editor, fast cloud-based compiler, helpful error reporting. Code faster and easier
"Deploy: Connect your Arduino via USB, or program your Arduino Ethernet remotely over the network.
"Share: Share your work, search for existing projects and clone them, or collaborate with others.

I have not tried it myself but it's probably your best bet if you want to do Arduino development with only a smartphone, tablet, or chromebook.

rainyhere:
Just one final update --

I now have a Chrome OS application that runs a local IDE, sends the sketch off for compiling on a remote server, and then takes the Intel Hex result and programs the Arduino locally. Takes just a few seconds for the round trip.

It does require Internet access for the Chrome App, but it works surprisingly well. Library support is very possible, but not written yet.

this new project might take a week or two to wrap up.

If you are interested, let me know, and I can set you up with a test account.

I've tried this and I'm very excited about it but I am not able to get it compiled and onto the Arduino. I am using the Arduino Micro and the Samsung Chromebook.

I have a chromebook, you have to download some apps form the appstore, but it seems to work for me.

Has there been any progress with this development? It's one thing I'm really looking forward to a great product with this!

About to use Arduino on a Chromebook, you can do it... but not directly. You need to install the Crouton script.

http://www.linux.com/learn/tutorials/795730-how-to-easily-install-ubuntu-on-chromebook-with-crouton

To be honest I think you'll probably need to perform your Chromebook adding more HDD space.

I hope those links shown above help you to reach your goal. Them helped me...