Difference between revisions of "Arduino"
m (→Links) |
|||
Line 5: | Line 5: | ||
* [http://www.arduino.cc/ Arduino] official website |
* [http://www.arduino.cc/ Arduino] official website |
||
* [http://www.lulu.com/content/1108699 Arduino notebook v6] |
* [http://www.lulu.com/content/1108699 Arduino notebook v6] |
||
+ | * [http://www.ladyada.net/learn/arduino/index.html Tutorial], [http://ahmedriaz.com/mind/esketching4designers/ video tutorials] and [http://www.arduino.cc/en/Tutorial/HomePage other examples] |
||
+ | Misc to explore |
||
+ | * http://www.freeduino.org/ |
||
+ | |||
==Arduino and Linux== |
==Arduino and Linux== |
||
===Installation=== |
===Installation=== |
Revision as of 15:47, 21 September 2009
So after the Arduino workshop at BruCON 2009 (pics here), I was seduced by this little development board.
Links
- Freeduino V1.16 Board, based on Atmel Atmega168, 100% compatible with the Arduino Decimilia board
- Arduino official website
- Arduino notebook v6
- Tutorial, video tutorials and other examples
Misc to explore
Arduino and Linux
Installation
Main instructions are here
As I'm using a Debian AMD 64bit, here is what I did:
Installing java from Sun and making sure it will be called by the tools. It might be that other java suites are working but at least java-gcj is missing a GtkLookAndFeel component that Arduino GUI is using
So if you don't have it yet:
aptitude install sun-java6-jre
Then if it's not the one by default, change it: (maybe "java" is enough but let's be consistent)
update-alternatives --config java update-alternatives --config jar update-alternatives --config keytool update-alternatives --config orbd update-alternatives --config rmid update-alternatives --config rmiregistry update-alternatives --config serialver
Other dependencies:
aptitude install avr-libc gcc-avr
Arduino tools, here v0017:
wget http://arduino.googlecode.com/files/arduino-0017.tgz tar xzf arduino-0017.tgz
Arduino tools are coming only for 32bit but it contains only a few executables so let's install the 64bit version of those executables
aptitude install librxtx-java rm arduino-0017/lib/librxtxSerial.so
There is also the avrdude binary in arduino-0017 which is compiled as 32bit executable.
You can recompile it from the source or if you have the ia32-libs package, the 32bit binary provided will work out-of-the-box.
But in any ways, DON'T USE AVRDUDE FROM YOUR DISTRO! because the one provided with the Arduino tools is a patched version.
Now let's try to launch the script arduino-0017/arduino
Tools/SerialPort/"/dev/ttyUSB0" Tools/Board/"Arduino Diecimila, Duemilanove or Nanoe, w/ Atmega168"
Now trying the very first code:
See this tuto
Problem with the original avrdude
As I told in the previous section, don't use the avrdude coming with your distro. Initially this is what I did and here are the problems I faced:
aptitude install avrdude avrdude-doc cd arduino-0017/hardware/tools mv avrdude avrdude.disabled mv avrdude.conf avrdude.conf.disabled ln -s /usr/bin/avrdude ln -s /etc/avrdude.conf
DON'T USE AVRDUDE FROM YOUR DISTRO! Then when trying to upload the bin to the board (menu -> Upload to I/O board), I got the following message:
Binary sketch size: 896 bytes (of a 14336 byte maximum) avrdude: Yikes! Invalid device signature. Double check connections and try again, or use -F to override this check.
Then I tried to inject the -F option to avrdude, it flashed the chip, gave me still errors:
Wrong microcontroller found. Did you select the right board in the Tools > Board menu? avrdude: Yikes! Invalid device signature. avrdude: Expected signature for ATMEGA168 is 1E 94 06
But the code was apparently correctly uploaded to the board as I got my blinking LED...
Avrdude which is part of the arduino-0017 release is a patched version as it says:
Version 5.4-arduino
While the version in Debian Squeeze is:
Version 5.8
So apparently we need absolutely to use the special arduino version.