Programming 328P directly over USB

Hi,

Can someone explain to me how it is possible to directly upload a sketch to a 328P over USB without FTDI? For example: Adafruit Pro Trinket - 3V 12MHz : ID 2010 : $9.95 : Adafruit Industries, Unique & fun DIY electronics and kits
How does that work exactly?

USB on non-USB chips is achieved using "VUSB", most likely - it's a library for faking USB on chips that don't have USB support. Note that it is not USB compliant, and you occasionally run into devices that won't talk with VUSB devices (for example, I have some hubs that won't work with USBAsps, which also use VUSB)

There is a sw driver for direct reading the usb signals via 2 pins.
The USB signals are fed via 68ohm and 3.6V clamping zener diodes to the atmega I/O pins.
It has been used for example in usbasp programmer.
http://www.fischl.de/usbasp/
The usb/avr interface inventor (~2002):
http://www.cesko.host.sk/IgorPlugUSB/IgorPlug-USB%20(AVR)_eng.htm

shayo:
Hi,

Can someone explain to me how it is possible to directly upload a sketch to a 328P over USB without FTDI? For example: Adafruit Pro Trinket - 3V 12MHz : ID 2010 : $9.95 : Adafruit Industries, Unique & fun DIY electronics and kits
How does that work exactly?

Here is my project where I use a 328P running V-USB to clone a Pro Trinket.

Ray

I use an Atmel AVR ISP MKii programmer to do it. Atmel has apparently stopped making them.
Or a USB ASP programmer when I can find mine: