Difference between revisions of "Arduino"
m (→Links) |
m (→Ethernet) |
||
Line 14: | Line 14: | ||
* [http://www.nuelectronics.com/estore/ nuelectronics] |
* [http://www.nuelectronics.com/estore/ nuelectronics] |
||
====Ethernet==== |
====Ethernet==== |
||
− | + | [http://www.adafruit.com/index.php?main_page=product_info&cPath=17&products_id=83 Ethernet shield] |
|
* [http://www.ewiznet.com/ wiznet] |
* [http://www.ewiznet.com/ wiznet] |
||
* [http://www.gridconnect.com/xportdirect.html xport], older but with DHCP |
* [http://www.gridconnect.com/xportdirect.html xport], older but with DHCP |
||
* See also [http://www.ladyada.net/make/eshield/ here] |
* See also [http://www.ladyada.net/make/eshield/ here] |
||
+ | |||
====LCD==== |
====LCD==== |
||
* [http://arduino.cc/en/Tutorial/LiquidCrystal Tutorial] with LiquidCrystal library, for Hitachi HD44780 compatible LCDs |
* [http://arduino.cc/en/Tutorial/LiquidCrystal Tutorial] with LiquidCrystal library, for Hitachi HD44780 compatible LCDs |
Revision as of 23:55, 21 September 2009
So after the Arduino workshop at BruCON 2009 (pics here), I was seduced by this little development board.
Links
My board
- Freeduino V1.16 Board, based on Atmel Atmega168, 100% compatible with the Arduino Decimilia board
Officials
- Arduino official website
Documentation
Hardware
Shopping
Ethernet
LCD
- Tutorial with LiquidCrystal library, for Hitachi HD44780 compatible LCDs
Misc links 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.