Arduino as programmer?

Is it possible to use the arduino's serial interface to program other avr's?

Using the SPI interface.

Ive seen C code which tells a 2313 to accept TX/RX data and convert it to SPI data, is this possible with the Arduino?

You may be able to use the code for the avrusb500, see http://tuxgraphics.org/electronics/200705/article07052.shtml

You'll have to change a few values to handle the diecimila's higher clock frequency, but that should be about it.

Also note that you don't want to use the diecimila's isp header for connecting to other boards, as its reset is connected to the diecimila's reset instead of a spare output. Use the corresponding digital ports instead.

Heh, :D I hava boarduino...

it has a 16mhz crystal, do I still need to change some values?

That project seems to use bizarre values like 14.7456MHz or 18.4320MHz. You need to change values if your crystal doesn't match the one its code is written for.

atmega168 datasheet says that error at 115200 baud is a bit high with 16MHz crystal, probably better off with 38400 although then you can't use it with avrstudio which will only use 115200. avrdude should be fine with whatever though

Is it possible to use the arduino's serial interface to program other avr's?

I've got a list of links about using an Arduino as an ISP (In System Programmer), they might be helpful for you.

My impression is that there are a number of incomplete solutions.

--Phil.