Installing Arduino IDE 1.8.19 on Raspbian Buster

I was finally able to get the Arduino IDE 1.8.19 installed on a Raspberry Pi 4 running the 32-bit O/S version of Raspbian Buster.

Do not follow the step of:

sudo apt-get install arduino

This will install a very old version.

Instead, the steps I had to follow (from a terminal window) are:

mkdir ArduinoPgm

mkdir Arduino

cd ArduinoPgm

wget https://downloads.arduino.cc/arduino-1.8.19-linuxarm.tar.xz

tar -xvf arduino-1.8.19-linuxarm.tar.xz

cd arduino-1.8.19

sudo ./install.sh

sudo sh ./arduino-linux-setup.sh (user name)

  • /home/(user name)/ArduinoPgm is where the IDE programs are stored. This cannot be "Arduino" or there will be problems starting the application.
  • /home/(user name)/Arduino is where the sketches are stored by the IDE.

Next, open the IDE. It is installed under the Raspberry Pi menu item Programming. Open File | Preferences. Ensure the Sketchbook location is set to

/home/(user name)/Arduino

1 Like

Do you have a wget link for the 64-bit version?

No, I don’t. But you should be able to download it from the web site and then proceed with the remaining steps.

Here are all the download links for the current versions of the Arduino IDE:

Arduino IDE 1.8.19

Arduino IDE 2.0.0-rc6

They are always listed on the "Software" page:

Thank you. I had previously downloaded libraries from "near" those links, and found out that the "most recent" were 10 years old (specifically DS3231.h)... Is there a way I can know "most recent" is most recent? Thanks again.

It is not clear to me what you are asking. Are you interested in the most recent version of a library, or the most recent version of the Arduino IDE?

If you are downloading libraries from a downloads.arduino.cc URL, then they must be the Arduino Library Manager libraries. There is a JSON format index of them all here that could fairly easily be machine parsed:

http://downloads.arduino.cc/libraries/library_index.json

But I would just take the easy way and install it using arduino-cli lib install <library name>:

https://arduino.github.io/arduino-cli/latest/commands/arduino-cli_lib_install/

Examples

  arduino-cli lib install AudioZero       # for the latest version.

As for the Arduino IDE, that is a bit more tricky. There is a discussion about it here:

There are some commands to get the version shared there. Make sure to read to post #6 for the corrected version of the git ls-remote command.

Those commands are parsing the list of tags in the Arduino IDE 1.x repository (https://github.com/arduino/Arduino.git). Arduino IDE 2.x has a new repository (https://github.com/arduino/arduino-ide.git), which is not discussed in that thread because Arduino IDE 2.x did not exist at that time. But the same commands will work just as well for Arduino IDE 2.x if you just change the repository URL in the git remote command.

Something to note when parsing the tags to get download links is that, at least in the Arduino IDE 1.x repository, downloads are not available for every tag. If that is of interest to you, maybe you would take inspiration from this (possibly incomplete) list and crazy bash code that filters some of them from the list:

# Arduino IDE tag blocklist:
# <1.5.2: no CLI (https://github.com/arduino/Arduino/blob/master/build/shared/manpage.adoc#history)
# 1.5.4-r2: Not available for download
# 1.5.5-r2: Not available for download
# 1.5.7-macosx-java7: Not available for download
# 1.5.8-macosx-java7: Not available for download
# 1.6.2: has the nasty behavior of moving the included hardware cores to the .arduino15 folder, causing those versions to be used for all builds after Arduino IDE 1.6.2 is used. For that reason, 1.6.2 will only be installed if explicitly specified in the install_ide version arguments
# 1.6.5-r2: Not available for download
# 1.6.5-r3: Not available for download
# 1.6.5-r2: Not available for download
# 1.6.5-r3: Not available for download
# 1.8.11-ms-store-1: Not available for download
# 1.8.13-ms-store-1: Not available for download
local -r ARDUINO_CI_SCRIPT_FULL_IDE_VERSION_LIST_ARRAY="${ARDUINO_CI_SCRIPT_IDE_VERSION_LIST_ARRAY_DECLARATION}'(\"$(git ls-remote --quiet --tags --refs | grep --invert-match --regexp='refs/tags/1\.0' --regexp='refs/tags/1\.5$' --regexp='refs/tags/1\.5\.1$' --regexp='refs/tags/1\.5\.4-r2$' --regexp='refs/tags/1\.5\.5-r2$' --regexp='refs/tags/1\.5\.7-macosx-java7$' --regexp='refs/tags/1\.5\.8-macosx-java7$' ${IDEversion162regex} --regexp='refs/tags/1\.6\.5-r2$' --regexp='refs/tags/1\.6\.5-r3$' --regexp='refs/tags/.*-ms-store.*$' | grep --regexp='refs/tags/[0-9]\+\.[0-9]\+\.[0-9]\+\(\(-.*$\)\|$\)' | cut --delimiter='/' --fields=3 | sort --version-sort | sed ':a;N;$!ba;s/\n/\" \"/g')\")'"

Thank you in0. My first question about the IDE was answered above. You answered my second question about locating most-recent libraries.

When I enter the final command:

sudo sh ./arduino-linux-setup.sh

I receive this:

The user name is not the right one, please double-check it !

I get my username from:

who

Should the username be "arduino?"

[EDIT] *** This works, so that last command, passing or failing, has not adversely effected the IDE! You are my HERO! ***

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.