Having issues: Burn Bootloader to ATmega32u4 with Arduino Micro (as ISP)

I am having problems trying to figure out how to accomplish this arduino bootloader programming to a separate ATmega32u4 microcontroller chip. While I have tried to find as many examples/guides as I could online, a lot of them are not entirely consistent and I am not experienced enough to know what is mandatory or optional, or even if I am doing something entirely stupid.

Hardware:

Arduino Micro (used for Arduino as ISP) - Pinout from from another forum member.

Atmel ATmega32u4 soldered onto a basic breakout board from Adafruit

16 Mhz oscillating crystal with two 20pF ceramic capacitors going to ground wired to the XTAL pins of the 32u4

10uF electrolytic capacitor, grounding the RESET pin of the Arduino.
(Should I ground the RESET on the Arduino Micro at all? I have read a couple of guides saying that it isn't needed, and a lot that say to do it) Also, is pin 10 on the Micro supposed to be the reset pin when using the Arduino as ISP sketch in the example sketches in the Arduino IDE?

I am trying to use the Arduino Micro as an ISP programmer to burn the Arduino bootloader onto the ATmega32u4 and I have been unsuccessful so far, so I turn to the forum to help. I understand that this is probably a non-issue that could be easily fixed by someone with anyone with just a hint more expertise in microcontrollers, however I am at a pretty basic level of understanding at this point in time, and am at a brickwall with the troubleshooting.

I have the everything rigged onto a breadboard.

I have tried with direct wiring the MOSI to MOSI, MISO to MISO and SCK to SCK from Micro to 32u4. I have also tried using the ICSP pins on the Arduino Micro.
I have tried wiring the RESET pin of the 32u4 (with and without capacitor) to the RESET pin of the Arduino Micro and to pin 10 of the Micro.

I am using the Arduino IDE to try to burn the bootloader.

The Arduino as ISP example sketch was successfully uploaded to the Arduino Micro with no errors.
Then I wired the 32u4 to the Arduino Micro. I choose Arduino as ISP under Tools > Programmer.
I am not sure which board to choose under Board, Arduino Leonardo or Arduino/Genuino Micro, but I have tried programming the bootloader with both of them and got the same error.

I've noticed that the ArduinoISP sketch says to use pin 10 of the programming Arduino, so that is why I tried pin 10 instead of the actual RESET pin.

I plug in the USB from my PC (the pin 13 LED does pulse like normal) and click Burn Bootloader.
When I hit Burn Bootloader, it gives the message Burning Bootloader to I/O board (this may take a minute), and it does linger on that for about a minute or a little longer.
Then the error message:

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x03
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x03
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x03
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x03
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x03
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x03
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x03
avrdude: stk500_recv(): programmer is not responding
Error while burning bootloader.
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x03
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x03
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x03

The only LED that blinks while it attempts to upload the bootloader is the RX LED.

I'm hoping that someone might be in the mood to lend an knowledgeable hand with my (probably) newbie mistakes.

I also have a SparkFun USB to Serial Breakout - FT232RL , but I'm not even entirely sure if that could be used to burn the bootloader at all.

(deleted)

The "Arduino as ISP" software only supports ATmega168 or ATmega328.

I have burned the bootloader on Chinese clones of Sparkfun Pro Micro (also ATmega32u4) , using USBasp 3v/5v Chinese clone. USBasp as programmer uses SPI interface.

Sparkfun product and Hookup Guide web pages detail the pinouts for SPI on Pro Micro and also details about Sparkfun custom bootloader.

borland:
The "Arduino as ISP" software only supports ATmega168 or ATmega328.

I have burned the bootloader on Chinese clones of Sparkfun Pro Micro (also ATmega32u4) , using USBasp 3v/5v Chinese clone. USBasp as programmer uses SPI interface.

Sparkfun product and Hookup Guide web pages detail the pinouts for SPI on Pro Micro and also details about Sparkfun custom bootloader.

Well that explains a few things. Do you know if this SparkFun USB to Serial Breakout - FT232RL will work to burn the bootloader on the atmega32u4 while using the Arduino IDE?

And to answer spycatcher2k, I had photoshopped a quick diagram earlier, so I figured I would finish it with the ICSP pins wired to show the connection that I had between the two. I attached it to the original post. I haven't drawn up any schematics in Eagle or anything yet, so hopefully that will be easy enough to make out what I wired.

Thank you for the replies.

brevik:
Do you know if this SparkFun USB to Serial Breakout - FT232RL will work to burn the bootloader on the atmega32u4 while using the Arduino IDE?

No, a serial adapter, like a FTDI Basic, won't directly burn the bootloader. You can use the Arduino IDE, but will need a SPI programmer (like a USBasp or USBtinyISP ) to burn the bootloader.
I suggest you look at one that can do both 5V and 3.3V processors. The USBasp programmer clones do supply a 3V/5V jumper and cost is only about $3 US (shipped) with the ICSP 6-pin adapter.
Since your board doesn't have a ICSP port, you might need six test clips too. The Pro Micro clones also sell for only slightly more than a Pro Mini clone (less cable, about $3 US shipped).

brevik:
I've noticed that the ArduinoISP sketch says to use pin 10 of the programming Arduino, so that is why I tried pin 10 instead of the actual RESET pin.

This works for me to program a Uno using a Pro Micro. Just make sure you are connecting to D10 on (Micro physical pin 30)to reset pin on chip to be programed. You should be able to program your 32u4 chip by selecting Micro or Pro Micro before using
"Burn Bootloader".

Check out Post #2 on this Link.

https://forum.arduino.cc/index.php?topic=410900.0

Borland had stated that the Arduino to ISP won't be able to program the 32u4, and I am leaning towards that being the case (maybe because I don't want to admit that I can screw up such a simple circuit) because most of the guides and examples that I have seen are overwhelmingly for the UNO and ATmega8/16 stuff. Of course it is probably possible, as most anything is with enough alterations and additions, but now that I realize that the Serial to USB adapter that I bought won't work either, everything is starting to make much more sense now that I have a baseline to learn from.

I have also tried the reset pin to pin 10 on the Micro as well with no such luck.

I am just going to try rush ordering a clone programmer from Amazon. Hopefully that will work for the 32u4 even though it doesn't mention that it does anywhere in the description.

On a side note, I will also want to try to program the Arduino bootloader onto a 128K ATmega1284P and its SMD equivalent, but I really doubt that any of the programmers that I have looked up would be up to that task. Does anyone have any suggestions on the type of hardware that I would need for that? Or will I need to order something directly from ATMEL?

Thank you everyone for the replies, it really helps not having to be troubleshooting in a vacuum.

"I have also tried the reset pin to pin 10 on the Micro as well with no such luck. "

I was hoping you had been using physical pin 10 instead of physical pin 30 on the Micro.

"On a side note, I will also want to try to program the Arduino bootloader onto a 128K ATmega1284P and its SMD equivalent, but I really doubt that any of the programmers that I have looked up would be up to that task. Does anyone have any suggestions on the type of hardware that I would need for that? Or will I need to order something directly from ATMEL?"

I think your Usbasp will do the job.

This should be helpful.

Once you have the board/microprocessor plug-in on the Arduino IDE and selected, the appropriate bootloader is burned by the programmer.

Many have problems installing the programmer drivers. There are some useful YouTube.com videos on installing the driver using Zadig utility. You might find this interesting..

USBasp Programmer Firmware & Drivers

Try browsing clones here...

Figured that I would provide a bit of an update here since I got the bootloader upload working, with some exceptions.

I first tried using a clone USBasp programmer and was able to get the bootloader burned onto the Amega23u4 once after many tries, however it didn't work a second time when I tried to repeat the success. The burn through the Arduino IDE came up with a bunch of SCK timing errors though, but it was more successful than it had ever been up to that point, and gave the message "Done burning bootloader" in the IDE. After the initial success I wasn't able to repeat it, and attempted to troubleshoot everything I could think of that may have caused sporadic function, but nothing came of it.
I was unable to upload a sketch through USB D+ and D- and received some quick and hard errors when attempted.

Second, I tried using the official USBasp from Thomas Fischl, and I couldn't repeat my original success with that either, I tried every driver from Zadig that was available to install, but was unsuccessful every time.

Same error kept coming up for both attempts:

avrdude: error: program enable: target doesn't answer. 0 
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.

Then I bought the Sparkfun Pocket AVR Programmer and was able to burn the bootloader the first time, and every subsequent time, with no issue.

However, I am still unable to upload a sketch via USB connection through D+ and D-. There are no errors, it just compiles the sketch and sits at "Uploading" forever. The verbose monitor during upload tries to communicate through COM1 over and over and then just says that it cannot find the programmer, but doesn't return an error, it just sits in uploading after.
I assume this is because I do not have a reset button attached to the reset pin. I'm not 100% sure though, and would appreciate some input on how to go about this while keeping a working in-circuit programming connection so I can reburn the bootloader or directly upload a sketch through a programmer if need be.

I'm trying understand the real workings of this whole operation better so that I can stick this all on a PCB permanently, and would like to be able to know what I can and can't do in order to have both functions (usb, D+ and D- and upload/burn bootloader through programmer) working on a PCB.

Sorry for all your problems.

For USB control, make sure you have added inline 22 ohm resistors on both D+ and D- pins per the ATmega32U4 datasheet.

I saw a Youtube.com video on installing drivers for USBasp clone, which showed how to configure Zadig options. You might want to try looking for that video. This video might help...

For the reset, you should pull processor's reset pin high (Vcc) with 10K ohm resistor. Programmer would still be able to pull reset pin low.