Trouble Burning Bootloader to Sanguino ATmega1284P with Uno

Hello all.

I've successfully flashed uploaded the example ArduinoISP to my Uno in order to then create a bootloader to flash the firmware on my Maker Select V2 3D printer.

From there I've tried creating the bootloader with the following options selected:

Board: Sanguino
Processor: ATmega1284 or ATmega1284P (16MHz)
Port: Arduino Genuino/Uno (same as I used for the ArduinoISP)
Programmer: Arduino as ISP

Even still, I'm getting the following error:

Arduino: 1.8.9 (Mac OS X), Board: "Sanguino, ATmega1284 or ATmega1284P (16 MHz)"

/Users/nv/Library/Arduino15/packages/arduino/tools/avrdude/6.3.0-arduino14/bin/avrdude -C/Users/nv/Library/Arduino15/packages/arduino/tools/avrdude/6.3.0-arduino14/etc/avrdude.conf -v -patmega1284p -carduino -P/dev/cu.usbmodem14201 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m 

avrdude: Version 6.3-20171130
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "/Users/nv/Library/Arduino15/packages/arduino/tools/avrdude/6.3.0-arduino14/etc/avrdude.conf"
         User configuration file is "/Users/nv/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/cu.usbmodem14201
         Using Programmer              : arduino
         Overriding Baud Rate          : 19200
         AVR Part                      : ATmega1284P
         Chip Erase delay              : 55000 us
         PAGEL                         : PD7
         BS2                           : PA0
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    10   128    0 no       4096    8      0  9000  9000 0xff 0xff
           flash         65    10   256    0 yes    131072  256    512  4500  4500 0xff 0xff
           lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00

         Programmer Type : Arduino
         Description     : Arduino

avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x14

avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x02

avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x10
         Hardware Version: 425479
         Firmware Version: 33554948.-1441849512
         Topcard         : STK502
         Vtarget         : 1.8 V
         Varef           : 0.0 V
         Oscillator      : Off
         SCK period      : 0.1 us

avrdude: stk500_initialize(): (b) protocol error, expect=0x10, resp=0x01
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.

avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x10

avrdude done.  Thank you.

Error while burning bootloader.

From what I've seen this is resolved by using a 10uF capacitor to disable auto reset but I want to be sure that's what's causing my issues before giving that a shot. I don't have anywhere around where I can get a single capacitor, need to buy them in bulk online.

Pictures of wiring attached.

Any help would be really appreciated.

try this change in programmers.txt

That got me past that issue, thanks. Not sure how I hadn't come across that yet.

I'm now getting this issue when trying to compile the firmware for the Melzi board.

Arduino: 1.8.9 (Mac OS X), Board: "Sanguino, ATmega1284 or ATmega1284P (16 MHz)"

In file included from sketch/pins.h:67:0,
                 from sketch/MarlinConfig.h:40,
                 from sketch/G26_Mesh_Validation_Tool.cpp:27:
pins_RAMPS.h:48:4: error: #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
   #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
    ^
In file included from sketch/pins.h:67:0,
                 from sketch/MarlinConfig.h:40,
                 from sketch/I2CPositionEncoder.cpp:31:
pins_RAMPS.h:48:4: error: #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
   #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
    ^
In file included from sketch/pins.h:67:0,
                 from sketch/MarlinConfig.h:40,
                 from sketch/configuration_store.h:26,
                 from sketch/configuration_store.cpp:47:
pins_RAMPS.h:48:4: error: #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
   #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
    ^
In file included from sketch/pins.h:67:0,
                 from sketch/MarlinConfig.h:40,
                 from sketch/power_loss_recovery.cpp:27:
pins_RAMPS.h:48:4: error: #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
   #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
    ^
In file included from sketch/pins.h:67:0,
                 from sketch/MarlinConfig.h:40,
                 from sketch/printcounter.cpp:23:
pins_RAMPS.h:48:4: error: #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
   #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
    ^
In file included from sketch/pins.h:67:0,
                 from sketch/MarlinConfig.h:40,
                 from sketch/M100_Free_Mem_Chk.cpp:49:
pins_RAMPS.h:48:4: error: #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
   #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
    ^
In file included from sketch/pins.h:67:0,
                 from sketch/MarlinConfig.h:40,
                 from sketch/leds.cpp:27:
pins_RAMPS.h:48:4: error: #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
   #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
    ^
exit status 1
In file included from sketch/pins.h:67:0,
                 from sketch/MarlinConfig.h:40,
                 from sketch/hex_print_routines.cpp:23:
pins_RAMPS.h:48:4: error: #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
   #error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
    ^
#error "Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

Doesn't seem to want to write it to the ATmega1284.

You need to set the right value for MOTHERBOARD in Configuration.h. All possible values are listed in boards.h. It sounds like you might be wanting one of these:

//
// Sanguinololu and Derivatives - ATmega644P, ATmega1284P
//

#define BOARD_SANGUINOLOLU_11   6     // Sanguinololu < 1.2
#define BOARD_SANGUINOLOLU_12   62    // Sanguinololu 1.2 and above
#define BOARD_MELZI             63    // Melzi
#define BOARD_MELZI_MAKR3D      66    // Melzi with ATmega1284 (MaKr3d version)
#define BOARD_MELZI_CREALITY    89    // Melzi Creality3D board (for CR-10 etc)
#define BOARD_MELZI_MALYAN      92    // Melzi Malyan M150 board
#define BOARD_MELZI_TRONXY      505   // Tronxy X5S
#define BOARD_STB_11            64    // STB V1.1
#define BOARD_AZTEEG_X1         65    // Azteeg X1
#define BOARD_ANET_10           69    // Anet 1.0 (Melzi clone)