Arduino has been packaged. The source builds two binary packages: arduino which is the full Java IDE, which depends on arduino-core which contains just enough of arduino to build and install sketches on the command-line using Martin Oldfield's Makefile (so, no IDE, and therefore no java dependency).
NOTE FOR UNO OWNERS: you need librxtx-java version 2.2pre2-3 or higher! It is available in unstable and wheezy (you can download it from packages.debian.org/librxtx-java).
You will probably want to add the relevant repository to your
/etc/apt/sources.list, then you should be able to do one of:
$ sudo apt-get install arduino
$ sudo apt-get install arduino-core
depending on what you want. Alternatively, you can follow the relevant package links above and grab the file directly, using dpkg to install it.
You might have to edit LD_LIBRARY_PATH to point to /usr/lib/jni. Extend your version of
/usr/bin/arduino to invoke the following line before the java vm is called or export the LD_LIBRARY_PATH variable in your shell before invoking /usr/bin/arduino:
This guide was an update to the previous(Arduino 0010) which itself was an update of Arduino 0007. The new guide should work for Arduino 0013 and Debian Lenny.
1. Install dependencies
$ sudo apt-get install openjdk-6-jre gcc-avr avr-libc avrdude
binutils-avr should be installed automatically.
2. If you've already installed a form of java then
$ sudo update-alternatives --config java
and select the number relating to
3. Download the arduino ide and extract it.
Install a minimal set of IA32 libraries packaged for use in a 64bit Debian system:
$apt-get install ia32-libs
6. Run the file "arduino".
It'll run and ask you where to put your sketches.
Configure your port. This is so you can read/write the arduino.
This should be all that is required to run 0010 ide in Debian Etch
If you want to build the Arduino IDE from source, you will need to install a few more packages so that you can compile Java source files.
$ sudo apt-get install sun-java5-jdk sun-java5-bin unzip zip
To make sure that you are using the correct Java compiler (
javac), run this command and select the number related to
update-alternatives --config javac
These steps describe how to get started with an arduino uno and debian squeeze. First we will install all dependencies. Next we download and extract the latest arduino 1.0 binary for linux. And finally we adjust some settings. All really easy.
NOTE1: current arduino package in stable (squeeze) is version 0018+dfsg-6.
NOTE2: arduino 1.0 has just been accepted in unstable (sid).
REMEMBER: the arduino UNO requires librxtx-java 2.2pre2-3 or higher. The current stable package is pre2-2. The easiest way around this is to temporarily add testing to your sources. Testing currently uses pre2-10.
So edit your /etc/apt/sources.list (or use your favourite gui package manager) and add: deb http://ftp.us.debian.org/debian wheezy main contrib non-free
Now install librxtx-java: sudo apt-get install librxtx-java
Remove the line again to use stable packages and do: sudo apt-get install gcc-avr avrdude gcc avr-libc libantlr-java libecj-java libjna-java liboro-java openjdk-6-jdk
2. Download the binary for linux 32 bit (or 64 bit, if you must)
links are here: http://arduino.cc/en/Main/Software
3. Extract the folder to a convenient location
For example ~/convenient/location/arduino-1.0
4. Now you can connect your arduino UNO and start the IDE
Double click the 'arduino' script or start it from the shell with:
You will notice that you can't select a Serial Port in the tools menu. This is probably because you need to add your user to a few groups to get it working.
NOTE1: you also have to connect your Arduino UNO to be able to select a serial port.
NOTE2: for a quick test you can run arduino as root with: sudo sh arduino. You should be able to select a Serial Port now.
5. Ofcourse you don't want to be running the arduino ide as root, so add your user to the groups tty and dialout like so:
sudo usermod -a -G tty yourUserName
sudo usermod -a -G dialout yourUserName
Log off and log on again for the changes to take effect!
NOTE: Some guides tell you to add your user to the uucp and/or don't add your user to the dialout group. If things don't work try those. Or check the group of your serial port. For example /dev/ttyACM0 (should be dialout). Then add your user to this group.