So I’m trying to use optiboot with a little project I’m doing. I currently have a atmega328p on a protoboard all hooked up with a 20MHz crystal and appropriate wires which I can use to hook it up to an Arduino board for programming. I have compiled optiboot for 20MHz using the source/toolchain/makefile provided with the Ardiono IDE. Using ArduinoISP I can flash this to my AVR on the protoboard just fine. The problem is though, I can not upload any programs to it through the serial port for some reason. I know, however, that the chip is running because when I press reset on the Arduino (avr taken out, hooked up to protoboard with wires) the pin 13 LED flashes just like it should on the bootloader reset. The weird thing is, if I flash the uno bootloader onto the protoboard and swap the crystal for a 16MHz one I am able to flash programs to the protoboard.
So I’m thinking that the problem is either optiboot when compiled for 20MHz, or its my 20MHz crystal. I don’t know how it could be the crystal, though, if I can burn the bootloader using it.