I'm perplexed by this one:
I'm trying to run my ATMega328P at 1.8V. The voltage at the chip (pin 4 and 21) sits at 1.82V (BK Precision Multimeter). When using the AVRISP mkII, the programmer LED lights up green (recognizing a powered chip) but fails to program.
Using an bench power supply, I discovered that at exactly 2V, the ability to program the chip returns. This is true regardless of the BOD/Extended Fuse setting (which I have set off with 0xFF).
I did notice the 1.8V BOD setting (0xFE for the extended fuse) keeps the MCU from powering on even after flashing. With it off, the chip will run using the 1.8V rail. I thought this might be useful debugging information, but Ignacio in the comments pointed out that this is expected behavior given the specced range of BOD threshold.
- Did I miss something obvious?
- Is 1.8V programming not actually supported at 1MHz on the ATMega328P?
- Do I need to design a 2V power supply instead if I want to be able to flash?
- Does the BOD circuit has some protective effect during programming, even when disabled? Could it be the programmer?
Thanks for any suggestions/debugging ideas!
Edited: Ignacio pointed out that the BOD cutoff for the 1.8V setting could vary up to 2V, so the BOD is behaving as expected. I thought perhaps the 'misfiring' of the BOD was a useful clue for why it mightn't be programming, but that no longer seems to be the case. The above was edited for clarity.