Reprogramming the Arduino board
Arduino natively uses the famous bootloader. This provides a nice way to upload our firmware using the virtual serial port on the USB. But we might be interested to go ahead without any bootloader. How and why? Firstly, that would save some Flash memory. It also provides a way to avoid the small delay when we power on or reset our board before it becomes active and starts running. It requires an external programmer.
I can quote the AVR-ISP, the STK500, or even a parallel programmer (a parallel programmer is described at http://arduino.cc/en/Hacking/ParallelProgrammer). You can find an AVR-ISP at Sparkfun Electronics.
I used this one a couple of times to program an Arduino FIO-type board for specific wireless applications in a project connecting cities named The Village in 2013.
This programmer can be wired using 2 x 5 connectors to the ICSP port on the Arduino board.
In order to reprogram...