I have been experimenting with AVR-USB recently. It has a lot more features than Igor Cesko’s code, but the downside is larger code size and the fact that it’s partly written in C which makes interfacing assembly code a bit trickier. I wanted to use it because it has good native support for HID devices, unlike Igor’s code which I had to implement the HID stuff on top of.
The USBtiny project also looks like it might be a good bet. Although it’s also in C, the layout and interface code is a lot clearer than the AVR-USB ones IMHO. The AVR-USB stuff is more in the style of computer targeted code I think. USBtiny seems more like a microcontroller project. Maybe it’s just the way I think.
Anyway, as for using AVR-USB with AVR Studio, one problem I found was with the supplied makefile. It doesn’t work with AVR Studio directly. I tried to make another one with MFile, but it produced non-working code in every configuration I tried. It sucks that a C project can be broken by the makefile. I think the problem lies somewhere with the way MFile tries to define everything in the makefile, where as most sensible people (including the AVR-USB guys) define it in the code. The makefile should just be instructions for building the output files, not influencing the compiler or defining stuff used in the source code. Anyway, in the end I modified the original makefile to work and producing a working .hex file from it.
I will post the makefile along with the entire project shortly.