Fixing Arduino on Ubuntu 9.10 Karmic x64 with librxtx-java
At present serial communication from the Arduino IDE will not work with the default installation as the IDE is supplied with a 32 bit version of the serial communication library rxtx and as yet the version in the repos doesn’t work either.
A full distribution of the arduino-0017 ide can be downloaded here with the correct files included.
If you haven’t used arduino before you’ll need to install its dependencies by running
sudo apt-get install avr-libc gcc-avr avrdude
To fix an existing installation – a working version of rxtx (rxtx-2.2pre2-bins.zip) can be downloaded from http://rxtx.qbang.org/ however at the time of writing the site had been down for a while so I’ve provided a mirror of the file (here).
To install:
Extract /RXTXcomm.jar and /x86_64-unknown-linux-gnu/librxtxSerial.xo into the ardunio/lib directory overwriting the previous versions.
Arduino serial communication should now work as normal.
For people having more general problems with any application using librxtx-java on 64 bit ubuntu I have created an updated .deb file – available here. This can be also used to fix arduino if the librxtxSerial.so file is removed from the arduino/lib directory.
The source code for rxtx can be found here
14 Responses to “Fixing Arduino on Ubuntu 9.10 Karmic x64 with librxtx-java”
Leave a Reply
All comments will be moderated before appearing
© 2010 Oliver Smith
I downloaded the full distribution and it worked perfectly! Thank you Oliver!
The next issue is getting the AVRISP MkII to work properly. It looks like its a permission thing with the USB. The work around is to open a terminal and go to the Arduino folder. Run it as:
gksudo ./arduino and the programmer works fine.
[...] Worth re-posting. The rxtx lib shipped with the 64bit Koala seems busted. Thanks! http://chemicaloliver.net/programming/fixing-arduino-on-ubuntu-9-10-karmic-x64/ [...]
I downloaded the full distribution,
and i still getting errors.
So I tried replacing the RXTX.jar
and the librxtxSerial.so files as stated above.
Still getting errors, i can get the ide to run and compile, just can’t upload to my arduino.
Using Ubuntu 9.10.
The errors say ‘can’t run program avrdude’
then goes onto list a bunch of .jar exceptions to long to list.
This all works fine on windows
Did you install the dependencies, arduino requires you to install sudo avr-libc avr-gcc and avrdude before it will work by doing
sudo apt-get install avr-libc gcc-avr avrdudeI’ll update the post
Worked like a charm. Thank you very much for your work.
Dosen’t work!!!! Ahhhhh
Ah, I see, if I read the instructions and do what it tells me, rather than boy read half the instructions!
Great works a treat
Fantastic thanks for this.
One thing, you can run ‘./arduino’ as an ordinary user (not root) if you add yourself to the tty group. I believe you need to be in the dialout group as well, but I found that I was in it already. If you run the ‘./arduino’ IDE as a plain user without it, it will work the first time, but further uploads will hang complaining about a lock, and ttyUSB0 will disappear.
Thanks for your work! Anyone else having problems with the latest kernel update (2.6.31-18)? I had to revert to 2.6.31-17 to get my arduino back working.
Is this under 9.10, the latest provided kernel still seems to be 2.6.31-17
If you activate the proposed repositories (karmic-proposed), you’ll get 2.6.31-18. Maybe this will be fixed once the kernel update finds its way into the default repositories. For now, it seems to be a good idea not to get the “proposed” stuff.
I assume you’ve filed a bug on launchpad!
It’s hard to reproduce the bug. The standard examples (LED blinking etc) work fine. Seems like Serial.available() works unreliably in my scripts on 2.6.31-18, whereas I’ve never had problems with earlier versions. I’ll try to put together a reproducible bug sample before filing something on launchpad.
I’ve had problems with various FTDI USB serial devices under Ubuntu 9.10.
I found that a power management driver is configured to recognise a wide range of Ftdi parts as belonging to a ‘Watts Up’ power meter. This can cause the driver to hold the device open, requiring the arduino user to be superuser to get the port.
I have reported this as a bug,
https://bugs.launchpad.net/ubuntu/+source/devicekit-power/+bug/507247
but the workaround is to rename /lib/udev/rules.d/95-devkit-power-wup.rules as 95-devkit-power-wup.rules.DISABLED.
If you actually own a Watts-Up meter, edit that file to distinguish between the FTDI chip in the power meter and the one in your arduino.
Thanks a lot dude!