How to Get Help Online

If you are stuck, don’t spend days running around alone—ask for help. One of the best things about Arduino is its community. You can always find help if you can describe your problem well. Get into the habit of cutting and pasting things into a search engine and see whether somebody is talking about it. For… Continue reading How to Get Help Online

Problems with the IDE on Windows

If you get an error when you double-click the Arduino icon, or if nothing happens, try double-clicking the Arduino.exe file as an alternative method to launch Arduino. Windows users may also run into a problem if the operating system assigns a COM port number of COM10 or greater to Arduino. If this happens, you can usually convince… Continue reading Problems with the IDE on Windows

Isolating Problems

Another important rule is to find a reliable way to reproduce a problem. If your circuit behaves in a funny way at random times, try really hard to identify what seems to cause this. Does it happen only when you press a switch? Only when an LED lights up? Whenever you move a jumper? (Many… Continue reading Isolating Problems

Testing the Arduino Board

Before trying very complicated experiments, it’s wise to check the simple things, especially if they don’t take much time. The first thing to check is that your Arduino board works, and the very first example, Blink, is always a good place to start, because you are probably most familiar with it, and because the LED… Continue reading Testing the Arduino Board

Exclusion and Certainty

While investigating, test each component separately so that you can be absolutely certain that each one works by itself. You will gradually build up confidence about which parts of a project are doing their job and which ones are dubious. The best way to do this is using the built-in examples, as they are unlikely… Continue reading Exclusion and Certainty

Simplification and Segmentation

The ancient Romans used to say divide et impera: divide and rule. Try to break down (at least mentally, and even better by sketching) the project into its components by using the understanding you have and figure out where the responsibility of each component or part of your program begins and ends.