Reburning the bootloader of an Atmega328p to run on its own 8 Mhz oscillator.

I have an Adruino Uno and an Atmega328p. The Atmega was already configured to run at 16 Mhz when I bought it (I also bought the crystal and capacitors with the chip) i.e. it already has a bootloader burned on it. I want to get the Atmega328p to run on its own 8 Mhz internal oscillator instead of being dependent on the external 16 Mhz one. I set up the Arduino and Atmega chip as is in this picture, because, as far as I understand, the Atmega needs the external oscillator to even be able to turn on (due to the bootloader that it currently has).

I followed the instructions on burning the 8 Mhz bootloader (further down on this page:
https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard), but keep on getting this error:

java.lang.NullPointerException
at cc.arduino.packages.uploaders.SerialUploader.burnBootloader(SerialUploader.java:362)
at processing.app.Editor.lambda$handleBurnBootloader$14(Editor.java:2519)
at java.lang.Thread.run(Thread.java:748)
Error while burning bootloader.

The chip is not dead (I tested it) and everything is wired up absolutely perfectly. There is nothing wrong with the IDE. I must be doing something wrong, but what?

Thank you very much for your help!

I don't know what causes that java error, but it has nothing to do with the hardware - a software problem with the IDE is causing it to die before it attempts to talk to the hardware.

Is that how I should’ve wired things up for re-burning the bootloader?

Which version of the Arduino IDE are you using?

Version 1.8.5

Which programmer and which board did you select in the ide (exact name because some are confusingly similar) ?

Incidentally, the tutorial you are following is a good example of a very bad use of a ‘Fritzing’ diagram. All the pin numbers are obscured, you can’t see which way the IC is inserted and there is no supplementary table of pin connections and also no schematic diagram.