I have been toying with creating my own tiny smd arduino platform (some of the process is documented in this thread: Standalone 3.3v Atmega 328p - [working] - Microcontrollers - Arduino Forum)
Now I figured out that the atmega328p 32-TQFP chips which I buy from digikey are preconfigured to expect a 16mhz crystal/resonator. In my final design I use the internal timer.
I am trying to find an easy way of burning the bootloader to them, as right now I am adding a bunch of traces to my design (like a breakout for the XTAL1 and XTAL2 pins so I can temporarily connect a timing source) which I only use for burning the bootloader and then most likely will never need again.
Long story short: Does anyone know of any zero insertion force connectors for the SMD version of the atmega328p?
If you don't know of any - is this something you might find useful? I'f it doesn't exist I might try to design a 3d printed version.
eh. in answer to my own question: http://www.adafruit.com/products/1240
Time to pull up tinkercad. This should be 3d printable.
Something like this ?
Although I think it only connects to the programming pins.
Yup, that adapter works well. Use 6 male-male wires to connect to MKii programmer.
hm. That would work, but I still need the XTAL pins broken out.
I just through this together. The ‘paper pcb’ does not line up correctly yet. Will be etched from flex-circuit material. Plan on attaching female headers pointing upwards. Gonna wait until I have more things I need etched before I try this though.
Anyone want one?
That would work, but I still need the XTAL pins broken out.
You need the crystal for the MKii programmer?
I was under the impression that it over the internal operation once Reset was asserted and the XTAL pins just became like any other IO pin, ready for fuses to be set to define what they did.
Yes, that was my understanding. However, the atmegas I bought seem to require a 16mhz clock to be recognized.
I tried burning the bootloader to them using USBasp, MKII and Arduino as ISP but had no luck. Once I connected the crystal, everything magically worked.
Once I set the fuse so that it runs with the internal crystal, I can remove the external crystal. I have not tested using the pins for GPIO though.
Now I figured out that the atmega328p 32-TQFP chips which I buy from digikey are preconfigured to expect a 16mhz crystal/resonator.
Not according to the datasheet. Were I in your shoes I would be nervous they sent poorly sourced chips and contact them for an explanation.
Well - I am a bit of a noob and I suspect that in the end, it is me who is probably doing something dodgy. (I reported my issues with these chips in this thread: Standalone 3.3v Atmega 328p - [working] - Microcontrollers - Arduino Forum you gave me some suggestions on how to debug it.)
I also assumed that maybe this was just a difference between the PDIP and the TQFP version.
They do offer a programming service. Quite possible they could have mixed it up.
Is there any other explanation for what I observed? No matter which programmer I used they gave back somewhat arbitrary device ideas (lots of zeros and fs. i.e. 0x0000ff or 0xffff00). As soon as I added the crystal, everything was fine.
Add the crystal and read the fuses with avrdude. The fuses will tell the truth of the matter.
BTW, in my experience, Digikey has always been extraordinarily helpful when I report a (rare!) problem. If you ask them and there's no problem they can find, they'll tell you. But if they do find a problem, you've saved someone a lot of trouble. Think about what happens if someone orders a spool of those things and they're improperly configured from "the factory" (or wherever they came from to be so wrongly configured.) If it takes a customer service rep 30 minutes to figure out whether or not that might happen, that's time well spent.
Due diligence and all that, but if there's any reasonable doubt that the part isn't as expected, err on the side of caution and point it out.