11

As we know Arduino has non-official Snap which can access serial ports only if installed as classic (but not indicated in snap find output):

$ snap find arduino
Name                  Version  Developer  Notes  Summary
arduino-mhall119      1.8.5   mhall119   -      Arduino IDE

Arduino packages from repositories are outdated:

Package arduino

trusty (14.04LTS) (electronics): AVR development board IDE and built-in libraries [universe]
1:1.0.5+dfsg2-2: all
xenial (16.04LTS) (electronics): AVR development board IDE and built-in libraries [universe]
2:1.0.5+dfsg2-4: all
artful (electronics): AVR development board IDE and built-in libraries [universe]
2:1.0.5+dfsg2-4.1: all
bionic (electronics): AVR development board IDE and built-in libraries [universe]
2:1.0.5+dfsg2-4.1: all

According to official Arduino site the latest version of Arduino IDE is 1.8.9.

One can download IDE from official site, extract and install it with install.sh. Then when newer version will be released repeat this action. But it looks difficult and not user-friendly.

How can I get latest Arduino IDE installed in user-friendly way?

19

Arduino IDE is installable with Ubuntu Make:

  1. Install Ubuntu Make

    • for Ubuntu 16.04 LTS from official PPA ppa:lyzardking/ubuntu-make:

      sudo add-apt-repository ppa:lyzardking/ubuntu-make
      sudo apt-get update
      sudo apt-get install ubuntu-make
      

      PPA is needed because of two fact: package for 16.04 LTS does not support installation of Arduino.

    Note: umake from 18.04 Universe repo may fail installing arduino ide. If so, you will need to purge ubuntu-make and install from the PPA. If this is the case you will also need to delete ~/.local/share/umake with rm -rf ~/.local/share/umake. See this QA for more info.

    • for Ubuntu 18.04 LTS and newer systems from universe repository:

      sudo apt-get update
      sudo apt-get install ubuntu-make
      
  2. Install Arduino IDE with Ubuntu Make

    umake electronics arduino
    

    or for 18.04 (without PPA, may fail)

    umake ide arduino
    

    This will download Arduino IDE from official site and install it to ~/.local/share/umake/ide/arduino and set corresponding shortcuts and file associations for it.

    You can repeat this command again to get newer version.

Note: do not forget to add your user to dialout group with sudo usermod -a -G dialout $USER .

| improve this answer | |
  • Looks like the command is now umake ide arduino, at least on 18.04 – Hilton Shumway Oct 2 '18 at 3:49
  • Does this update it whenever anything else on my system updates? – starbeamrainbowlabs Nov 6 '18 at 18:09
  • No, you should run umake ide arduino manually each time. In Arduino case it is very useful as you can prevent the occurrence of new bugs (for example this with internal Arduino Boards component). – N0rbert Nov 6 '18 at 19:51
  • says WARNING: Arduino is now in the electronics category, please refer it from this category from now on on 19.10 – Sadap Feb 24 at 16:55
0

The easiest way to install the latest Arduino IDE is to use the arduino snap:

snap install arduino

Then add your user to the dailout group:

sudo usermod -a -G dialout $USER

After this, reboot your device and open Arduino IDE.

A note about Python support

The Arduino IDE snap runs inside of a sandbox for security and stability reasons. This means it cannot access the Python libraries on your device. The snap bundles Python 3 and the serial library. If you need any other Python dependencies, you can install them inside of the sandbox using the arduino.pip command.

arduino.pip install <package-name>

Note: do not use sudo for this command

| improve this answer | |
  • This sounds great, but Snap may not have access to removable media and data outside the home partition. So I prefer umake. – N0rbert May 15 at 20:12
  • @N0rbert If you want to access removable media, just run snap connect arduino:removable-media or change the permissions of the app using "Settings". Ideally, Arduino should just use XDG Desktop Portal so it can access any file the user chooses, but this is not yet supported for Java Swift apps. – Merlijn Sebrechts May 16 at 16:16

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