I'd very much like to use the Atmega32U4 because a) it has built-in USB support w/ bootloader (so I can update the custom device itself without the need for an ISP - it's going to be buried in an enclosure) and b) it has the resources I need for my "general purpose" requirements.
What I'm envisioning from the end-user perspective is the following:
- When they plug in the USB, it is recognized as a AVRDUDE compatible programmer (ie. USBtinyISP) and used as such.
- When they plug in the USB and press the HWB/RST to enter bootloader, then it is recognized as an "Atmel AVR device" and they use FLIP (or whatever) to update the device's own firmware
- When its not plugged in via USB but instead self-powered, it now behaves as a custom programmed MCU communicating with the "target"
I've scoured the web for related tutorials and such and have so far come up empty.
Is what I'm trying to do plausible? Can the USBtinyISP firmware be adapted to work on such a chip?
Any ideas to get me started would be appreciated, thanks.
ps. I've ordered a Teensy 2.0 as a general purpose dev platform for this project since it comes with a Atmega32U4 onboard.