I’ve run into the same issues as the original poster in this thread (http://forum.arduino.cc/index.php?topic=139671.0).
Quite similarly, I followed: Gammon Forum : Electronics : Microprocessors : How to make an Arduino-compatible minimal board and got the boot-loader onto the 1284p without a hitch. The real trouble started when I tried to program the chip (no compilation errors so at least that checks out) and all I got in return was a sync_resp error.
I’m using the same pin connections as Nick (I have the DTR auto-reset set up):
TX (Arduino) — TX
RX (Arduino) — RX
RESET --------- RST
GND (Arduino) - GND
5V (Arduino) — V
Other miscellaneous settings/options:
Board: “maniacbug” Mighty 1284p 16MHz using Optiboot (Jack Christensen’s v1.63 compatible variant)
The chip I have the is the Atmega1284P-PU1412 DIP.
Solutions I have attempted:
More of a hack but pressing the reset button while uploading and releasing (to help with syncing); this worked with my old breaduino setup with a 328p (before I put in a proper auto-reset). Did not help with the 1284p.
Setting the crystal mode to full-swing (changed low_fuse to 0xF7 from 0xFF). I was hoping this would work but unfortunately not. Did I perhaps miss a step?
I’ve attached a picture of the circuit (it’s a bit scattered-looking but hopefully legible enough). Is there anything I’m doing that’s obviously off?
These are the fuse setting I used when burning the optiboot bootloader on a 1284P:
In my setup I have a JTAG interface so you may want to change that.
Check the resonator - the wiring to it looks a little off. But it could just be the picture angle.
Do you have Reset on the Arduino connected to Gnd so the 328 is not interfering?
Open File:Preferences and select Verbose outputs. Makes it a lot easier to get the timing down for a Reset press on the 1284. You can't use the Arduino Reset for this, need a separate Reset button.
I offer 1284P boards in a few configurations when you want to move on to something more stable.
Example, a Duemilanove style board with FTDI module, can be onboard as shown (MIKROE-483), or offboard with FTDI Basic kind of module, I use one from www.tinyosshop.com.
(vs Uno style with Atmega16U2)
Thanks for the replies!
@ron_sutherland: I'll give that go and get back on how it goes as soon as I can.
@CrossRoads: The resonator's wired correctly (I just double-checked) so it is the picture's angle (whoops). As far as the Arduino Uno goes, I took the picture because I had it handy but I'm using an FTDI breakout board to upload sketches (well, at least trying to) so I'm fairly confident the 328p's not interfering.
I do also, indeed, have an external reset button set up (which I expertly managed to cut out of the picture). Using it seemed to make little difference to my plight.
I've been browsing through the forums and I've seen a couple of people claim that using a 12 MHz crystal helped them upload sketches or at least mitigate a lot of their problems? Is there any credence to this?
Odd, I've done similar, had a problem but full swing solved my problem.
I’ve only ever used 16 MHz crystals.
The closest I have to a breadboard is this wirewrap setup:
@Larry: quick question--did you use the same setup from the link I posted or was it somewhat different?
@CrossRoads: I think what I'll do is rebuild the circuit using your reference (thanks for those by the way!). I have this niggling feeling I might be missing something so it doesn't hurt to retry.
I'll be a bit busy until Monday, so I'll get back on how it goes as soon as I have something built.
I also wired up a 1284 on a breadboard.
I used a 16 MHz crystal with two 22pf capacitors.
Used 10K, 1N4148 diode and .1uf DTR cap on the rest pin.
I had decoupling caps on VCC pins.
I, however, used the Bobuino variant with FullSwing enabled.