I used to use Arduino on Windows but I changed to Linux last week and I was wondering how to have a maintained version of the Arduino terminal:

Indeed, I'm not sure my version is quite recent:

Screenshot of Arduino IDE on Ubuntu

The icon seems to have lived ages without a little lifting...

Maybe I'm wrong but it seems so when I open the "Tools" option for instance...

Furthermore I tried to copy and paste this code:

//ONG LIT YIT 2013-07-20
//This following code plays happy birthday melody on Arduino
//Put Piezo Buzzer on GDN and 9 (Positive and negative are reversible)
//this project requires a Piezo Buzzer and

// an Arduino board and

//jumper wires to connect Buzzer's (+) to ~9 and (-) to GND (any GND)


//this project requires a Piezo Buzzer and

// an Arduino board and

//jumper wires to connect Buzzer's (+) to ~9 and (-) to GND (any GND)


int speakerPin = 9;

int length = 28; // the number of notes

char notes[] = "GGAGcB GGAGdc GGxecBA yyecdc";

int beats[] = { 2, 2, 8, 8, 8, 16, 1, 2, 2, 8, 8,8, 16, 1, 2,2,8,8,8,8,16, 1,2,2,8,8,8,16 };

int tempo = 150;

void playTone(int tone, int duration) {

for (long i = 0; i < duration * 1000L; i += tone * 2) {

   digitalWrite(speakerPin, HIGH);


   digitalWrite(speakerPin, LOW);




void playNote(char note, int duration) {

char names[] = {'C', 'D', 'E', 'F', 'G', 'A', 'B',           

                 'c', 'd', 'e', 'f', 'g', 'a', 'b',

                 'x', 'y' };

int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014,

                 956,  834,  765,  593,  468,  346,  224,

                 655 , 715 };

int SPEE = 5;

// play the tone corresponding to the note name

for (int i = 0; i < 17; i++) {

   if (names[i] == note) {
    int newduration = duration/SPEE;
     playTone(tones[i], newduration);




void setup() {

pinMode(speakerPin, OUTPUT);


void loop() {

for (int i = 0; i < length; i++) {

   if (notes[i] == ' ') {

     delay(beats[i] * tempo); // rest

   } else {

     playNote(notes[i], beats[i] * tempo);


   // pause between notes




And not all of it appeared in the Arduino terminal.

Screenshot of Arduino IDE with badly pasted code

  • 2
    That is a very old version. Please download from the Arduino Software page arduino.cc/en/Main/Software. I normally install to ~/opt/arduino-x.y.z. Run the arduino binary from that directory. Feb 8, 2016 at 22:47
  • Okay! Thanks! How do I install it to ~/opt/arduino-x.y.z. ? Feb 8, 2016 at 22:48
  • Go to the download page. Click on the Linux version you require (32 or 64 bit). Wait for the download to complete and the Archive Manager is started. Push extract and select where you want to "install" it. Feb 8, 2016 at 22:51
  • 2
    Basically you un-archive it as Mikael Patel said, and then just double-click the Arduino icon to execute it. You may need to fiddle with permissions or settings or it might just open it in a text editor.
    – Nick Gammon
    Feb 8, 2016 at 23:04
  • 2
    FYI, the reason Ubuntu packages such an old version of the IDE is that the Arduino licensing needs to be updated/clarified. As is, Ubuntu cannot legally distribute the latest Arduino version: github.com/arduino/Arduino/pull/2703 The rest of the work to include it in the Ubuntu repository is done, so there's nothing more they can do about it.
    – Tyler
    Feb 9, 2016 at 21:22

1 Answer 1


If you want to get maintained (automatically updated) version of Arduino IDE then you install if from a package repository with its dependencies e.g. using apt-get:

sudo apt-get update
sudo apt-get install arduino arduino-core

However, this way you get a very old version (currently 1.0.5). Obviously, it is not updated too often if at all.

If you already installed from the package repository via apt-get you can uninstall the package and its dependencies like this:

sudo apt-get remove arduino arduino-core
sudo apt-get autoremove

Better way is to download and install Arduino IDE yourself. This way Arduino software won't automatically be updated, so you should check Arduino website every now and then and download a new version if one is available.

Open a terminal window (e.g. by pressing CTRL-ALT-T), and run uname -m to check if you are running 32 bit or 64 bit platform:

uname -m

See output:

x86_64 ==> 64-bit kernel
i686   ==> 32-bit kernel

Go to Arduino Download page on Download the Arduino Software and download the 32 bit or 64 bit version, depending on the Ubuntu version installed on your computer.

In a terminal window extract the package and move it to your preferred location, e.g. /opt. You need sudo rights to move it to /opt. Finally, run the install script if you want to start the IDE graphically (adds desktop icon, MIME type, default application for .ino). See the example commands below for installing the latest 32 bit version as of the time of writing to /opt.

cd ~/Downloads
tar xf arduino-1.6.7-linux32.tar.xz
sudo mv arduino-1.6.7 /opt

You can also start the IDE from the terminal:

  • Why into /opt? Why not just keep it under /home and launch it there?
    – Avamander
    Feb 9, 2016 at 13:10
  • 1
    @Avamander It makes sense if you aren't the only user of the computer. If you are the one and only user of the Linux box then keeping it under your home dir if just fine.
    – talamaki
    Feb 9, 2016 at 13:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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