I soldered the TQFP (with a bootloader) to the board, checked every single pin for a short (there was none)
I measured my DMM's voltage to 3V
Sorry for the late reply. The pcb is powered from my arduino so it's the same ground. I have pads connected to TX, RX and RST with a hole through them, wires are soldered to these pads and connected directly to my arduino. I don't have a rst cap, but I've honestly never had a problem with this before (my DIP chips don't need them at least)..
The adapter lets you install the bootloader without having a header or access to programming pins.I may have been a little confused over whether you needed that, or if you had done that already (including fuses) and just needed serial interfacing help.0.1uF cap from DTR to reset, and 10K pullup on reset are usually needed for software autoreset during downloads. Otherwise, you need a manual reset when the IDE shows "Compiled xxx of 32xxx bytes" or similar.
How did you get the bootloader on the TQFP chip? Did you set the fuses to use a 16MHz crystal as well as burning the bootloader?The standard approach when building your own atmega-based system is to include an ICSP header on your board, use an un-programmed chip (no bootloader needed), then set the fuses and upload the sketch using ICSP. See http://miscsolutions.wordpress.com/2011/08/09/prototyping-small-embedded-projects-with-arduino/ for an overview.Also:1. Did you include a 0.1uF ceramic decoupling capacitor close to the chip, as well as the 470uF one that you mentioned?2. You said connected TxD and RxD from your board to the corresponding pins on the Arduino. How did you ensure that the Arduino was not driving the TxD pin?
I'm not quite following here. If a RST cap is essential, how come I never have any issues with the DIP atmega328's?
I uploaded the bootloader using one of these: http://www.ebay.com/itm/Flap-QFP32-TQFP32-PQFP32-TO-DIP32-Programmer-Socket-Adapter-Conveter-IC51-D0090-/130834643503?pt=LH_DefaultDomain_0&hash=item1e765a3a2f
This went down without any issue. I later reconnected it (with the MCU still inside the socket) to see if I could program it using RX and TX and I had no problems with that either. I simply uploaded the Arduino ISP scetch and the pressed "burn uploader". Never had an issue with this in the past.
Why isn't using a bootloader standard? I often develop my code while I'm programming so I need to be able to get data from it using the UART. If I'm going to program it using SPI and the UART it would mean a total of eight cables instead of five. Shouldn't it be just as viable to pre-burn the bootloader using the socket I linked, and then program it just like the arduino is meant to be programmed?
This could be an issue though, not sure, perhaps I need a bigger electrolytic as well? Then again, a small ceramic cap close to the power pins has always worked for me in the past.
Not sure if I understand the question. All I checked was to see if there was a connected between the arduino and my TQFP chip (and there was). I also tried to scope both RST, RX and TX, but I didn't see anything (just a constant HIGH).
I am really tempted to just replaced the chip, but that's what I've done in the past without any luck where the result has just been me burning through chips
If you're programming via serial, and the DTR (or whatever) pin is constantly low, and that is connected to the RST pin of your ATmega, it shouldn't work. Ever. TQFP or DIP, doesn't matter. You're holding RST low, which should keep the chip in a coma. The 0.1uf series cap is absolutely necessary to turn that constant DC low into a low pulse.
OK, that's how you physically broke out the pins, but you didn't explain the process you used to get the bootloader onto the TQFP. DIP adapter in a breadboard with its own crystal, caps, and reset resistor -- ICSP to Arduino running Arduino-as-ISP sketch? (This is what I'm assuming based on your description, but you're leaving out some detail.)
Sounds like we need to start over. Can you explain exactly how you have everything wired? Photos help. Also, if your PCB is involved in this, the schematic and an image of the board layout will help as well. I'm taking from your description that you do not have an electrolytic cap anywhere? You should. The 470nF (odd value BTW, but OK...) ceramic decoupling cap will shunt noise, but it doesn't do much for bulk storage. That is likely to cause power starvation, which is precisely what you don't want for stable operation.
You have a scope? Good. Do you also have a logic analyzer? Are you saying all three -- Reset, TX and RX -- were HIGH at all times? Yeah, that would certainly make it not work. There's absolutely a bad part or wiring error(s) there.
Why isn't using a bootloader standard?