While Arduino is a nice little system, there's a lot of bugs. Hopefully they'll be fixed soon, but until then, here's problems you're likely to run into.
If you get the following error message "avrdude: stk500_getsync(): not in sync: resp=0x00" that means that the Arduino is not responding. There are literally dozens of reasons this could be.
Check the following:
- If you have a NG Arduino, did you press reset just before selecting Upload menu item?
- Is the correct Serial Port selected?
- Is the correct driver installed?
- Is the chip inserted into the Arduino properly? (If you built your own arduino or have burned the bootloader on yourself)
- Does the chip have the correct bootloader on it? (If you built your own arduino or have burned the bootloader on yourself)
Note that it is nearly impossible for anyone to debug this, as there are so many possible issues. Try everything.
If you get the following error message java.lang.NullPointerException at processing.app.Serial.setDTR(Serial.java:480)
It means you dont have a serial port selected, go back and verify that the correct driver is installed (lesson 0) and that you have the correct serial port selected in the menu.
This is a bug in Arduino and will hopefully be fixed in v10.
If you get the following error avrdude: Expected signature for ATMEGA is ...
Then you have either the incorrect chip selected in the Tools menu or the wrong bootloader burned onto the chip
(no screenshot as I can't reproduce it)
You have the wrong serial port selected. Make sure the driver is installed and you have the correct serial port number, see lesson 0.