I'm building an HID Joystick with V-USB and an AtMega8-16PU (not AtMega8A).
I'm using 2 diodes in series between incoming +5v and my circuit's power rails to drop the voltage (but I'm wondering, would just using a 3.3v regulator be better? I didn't see much explanation as to why these diodes are needed but they work in the breadboard...)
I have a 12 MHz Oscillator, 2 x 68-ohm resistors (D+ to PD2/INT0, and D- to PD4), and the 1.5k pull-up on the other side of the 68 ohm resistor for D-.
A couple of random caps (ceramic and polarized) to provide steady power to the device.
I have internal pull-ups turned on for all IO pins except for PD2/PD4 which I let V-USB manage. (I'm making an arcade style stick, this approach lets me just wire up two wires to each button so that pressing one just shorts it to ground -- this works on the breadboard...)
I've checked and double checked all traces with a multimeter, Ive tried cutting the pathes of D-/D+ to be super short (and the crystal's path as well)...
I've examined the circuit under a 10x monocle...
I redid the circuit on verboard with a different layout, previous was stripboard, this one is sets of 3 pads, with bus lines running between them (very similar to breadboard...) from radio shack, again, same results.
I can program the device in these circuits, and verify them, but when I plug them into the PC, they don't even give meaningful error data, just a simple "Hey, this thing don't work, unplug it already."
I considered that I may have heat damaged the Oscillator, and screwed up it's timing or something -- so I unsoldered it, plugged it into my breadboard and tried, and the damn thing worked -- I've tried multiple chips, plug them into breadboard, they work, plug them into soldered circuit, they program and pass all the tests, but V-USB fails...
I feel like there must be some n00bism that I'm screwing up, but what is it?