I essentially built my own ATMega2560 board with a blank ATMEGA2560-16AUR as the MCU and a blank ATMEGA16U2-MUR as the USB-MCU interface.
I managed to upload the bootloader onto the MCU using an UNO as an ISP. This worked well. I am able to upload code onto the MCU as long as I keep the UNO connected to the MCU’s SPI ports and “Upload as Programmer”.
Then, I flashed “Arduino-usbserial-atmega16u2-Mega2560-Rev3.hex” onto the ATMEGA16U2 using Flip and I believe this worked because whenever I plug in my board, the USB name says ATMEGA2560. The issue is whenever I try to upload code through the ATMEGA16U2, I get timeout errors. I made sure that the board is Arduino MEGA2560, Port is Arduino MEGA2560, and Programmer is AVRISP mkII.
Am I missing a step?