3.3V INTERNAL 8Mclk bootloader question on ATMEGA328P

Hi guys

I am working on burning 3.3V internal 8M clk bootloader to ATMEGA 328P. And I got some problems.

Here is what I did: ( I did all these with a UNO R3)

  1. I started with 5V/8M internal clk bootloader, followed this link:
    https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard

I can burn the bootloader in, I can upload sketches.
Then I tried to lower the VCC from 5V to 3.3V. @4V, it still worked, @3.4V, it still worked, but @3.3V, the internal oscillator stopped working.
I thought it might be the BOD failure, so I change the efuse to 0xFF, same problem.
I gave it an external 16Mhz clk at 3.3V Vcc, everything just went back to normal.

  1. Then I tried a 3.3v/8Mhz internal clk Opti-bootloader. (same connection as above)

I can burn the bootloader, but can not upload any sketches. The error is like : "avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x60" and repeated 10 times.
Change the efuse thing, still not work.

So my question is:
Can I make this work at 3.3V with 8Mhz internal clk? If so, which bootloader should I use?

Update:I solve the problem by lower the baud rate from 115200 to 57600.

but the data send through RX and TX have flaw.

maybe I should lower the baud rate too.

update2: yes, lower the baud rate helped too.