Witam,
Próbowałem ostatnio ustawić moją atmegę 328 jako USB HID z użyciem
V-USB. Po wielu próbach udało mi się, by była wykrywana poprawnie przez Windowsa, po czym zabrałem się za przesył danych. Wraz z biblioteką V-USB przychodzą przykłady - jeden z nich służy do zapisu i odczytu paczki danych do EEPROM'u mikro. Po pierwszej próbie zapisu bajtu danych mikrokontroler natychmiast rozłączył się (przestał być wykrywany poprawnie jako HID). Od tego czasu przy każdej próbie zapisu extended fuse bitów wyrzuca błąd niespójności:

Jeżeli chodzi o high i low fusy to nie ma żadnych problemów (nie było na początku - czytaj dalej). Jakiś wpływ na zapis efuse'ów jest, ponieważ przy próbie z różnymi wartościami są różnice przy weryfikacji (próbując zapisać 0xFF faktycznie zapisywane jest 0x07, przy 0xFE -> 0x06, przy 0xFD->0x05). Również wgrywane na mikro programy działają bez zarzutu, choć przy ich wgrywaniu bez załączonego zasilania również występuje błąd niespójności danych (wcześniej tego nigdy nie zauważyłem). No i co najważniejsze, w żaden sposób nie mogę dojść do tego by mikro ponownie został poprawnie wykryty jako HID, a to największy problem. Były próby zmiany efuse'ów zarówno z zewnętrznym zegarem jak i wbudowanym, z dzieleniem / 8 i bez, z zewnętrznym zasilaniem, czy w trybie unsafe.
Po ostatniej próbie zapisu low fuse bitów wartość zadana przeze mnie również została przekręcona i straciłem kontakt z mikrokontrolerem. Kupiłem nową atmegę328P, ale problem występuje nadal. Próbowałem również z programatorem usbasp kolegi i z użyciem jego komputera - dalej to samo. Rozłożyłem cały układ, wymieniłem wszystkie kabelki i komponenty na nowe, zmontowałem na nowo w innym miejscu płytki stykowej - dalej to samo. Używałem 3 różnych wersji avrdude (5.8, 5.11, 6.1), naturalnie bez skutku. Jakieś pomysły?
Schemat układu (na resecie jest pull-up 10k Ohm, zapomniałem go dodać do schematu) (przepraszam za brak zgodności z jakimikolwiek normami, ale robie to pierwszy raz i z pierwszym znalezionym programem):
