Arduino Optiboot with MAX232

I want to make a frequency counter like Scott Harden ($10 Frequency Counter Finished!).

I am using the ATMEGA328p with optiboot.

Instead of an LED display, I want to send the frequency out the serial port to make it available to other devices. I don't want the baggage of a complete board, so I set it up like this: http://itp.nyu.edu/physcomp/Tutorials/ArduinoBreadboard. Except I used a Maxim MAX232 to bring the RS232 to TTL.

I use a 10k resistor pull up and a 10uF to ground for pin 1 reset. I tried hooking the reset up to DTR ala this: http://mcukits.com/2009/03/12/assembling-the-freeduino-serial-v20-board-max232/. I don't like the flyback that occurs on the reset pin when the DTR changes state. So for uploading sketches, I sequence my board power up with the Arduino0022 upload button push. Works good with just TX and RX hooked up.

It successfully uploads my sketch for the frequency counter and then starts executing my sketch. It works great until I power cycle my board. I have an LED on D13/pin 19. When it powers up again, the LED flashes 3 times ad nauseum and never executes my sketch.

I followed the debug sticky and the only thing that resonates is I tied TX and RX pins together. No luck.

I ordered the "Arduino-bootloader speedy 2x upgrade chip (Atmega328)" from Adafruit and removed the optiboot chip and put in the arduino-bootloader chip and now it uploads my sketch and works great. No problems with power cycling.

What is going on with the optiboot? Does it expect some kind of sequencing from the Arduino Uno ATMEG8U2? Has anyone else had success with the MAX232-Optiboot combo?

Thanks.

Did you install the bootloader or did you buy the processor with the bootloader already installed?

I bought the Optiboot (DEV-10524) from Sparkfun and the "Arduino-bootloader" (ID-123) from Adafruit.

I recall that a previous version of optiboot was forgetful. I suggest updating the SparkFun processors to the latest version of optiboot...
http://arduino.cc/forum/index.php/topic,64105.0.html

If that solves the problem, please post a warning on SparkFun's website so others can benefit from your knowledge.