Thank you both for your replies. First off, I have to admit that while I've done a lot of embedded design, I'm new to Arduino and trying to ramp up as quickly as possible. I've always simply used the manufacturer supplied IDE and a JTAG or ICE device to connect to the micro's debug interface. I've done ARM (NXP LPC Cortex-M0) and even a recent Xmega (A4U) design, but I just used Atmel Studio and the Atmel-ICE.
But now I'm hoping to design a gadget that will be easily approachable by those Makers/Hobbyists who are familiar and comfortable with the Arduino IDE and might not be up for buying an ICE or using an Eclipse or Visual Studio type IDE. I want them to be able to program it with their familiar Arduino IDE environment. Ideally, I will be able to design my circuit such that users would just run Arduino IDE on their PC and connect a USB cable between their PC and a Micro-B USB connector on my board that connects directly to a USB interface on the micro itself.
I've observed that many Arduinos use an intermediate chip to perform a USB-to-Serial conversion. The Arduino Uno R3 for example, uses that ATmega16U2 between the USB connector and the ATmega328P. Of course this is necessary as the 328P doesn't have a USB interface built in. But some micros do, and I'm hoping to identify one of those and have a very simple/direct interface between the user's PC and the micro on my board.
Not coming from an Arduino background, I may have some misconceptions, so please feel free to correct me if I'm off track.
Another goal is to not use a 100 or 144 pin micro! I only need about 18 bits of I/O. The 48-Pin TQFP D21 seems perfect, I just don't want to have to use that EDBG chip! Is there a D21 Bootloader for the D21 that would use the D21's native USB interface and work with the Arduino IDE? And would there need to be a D21 descriptive file of some sort used by the Arduino IDE as well? I'm likely exhibiting my ignorance here, please feel free to enlighten me.
Bottom line is that I want users to be able to easily write their own code on the Arduino IDE and program my gadget. I need some speed and some program space (and hopefully at least 8k RAM), but otherwise I don't need much from the micro other than some simple resources like SPI, ADC, Timers, etc...
So I'm trying to figure which chip I should be using to accomplish my goal, and any additional circuit requirements for pulling off this interface between my gadget and the USB port on the PC running the Arduino IDE. Ideally there would already be a Design Reference Schematic of some sort demonstrating the interface as well as the necessary bootloader and any IDE-related files. I expect I'm not the first to approach this and I don't want to reinvent the wheel here.
Again, I am grateful for any guidance and insight you can share to help me define what my best solution would be for designing in a higher performance micro and still providing a direct (no intermediate chip) USB interface to the PC running the Arduino IDE.
Thanks again,
Matt