How to debug? AVR-USB device does not respond to host
Posted: Mon Dec 15, 2008 7:06 pm
Hi,
I built an AVR-USB device using an ATtiny861 with a 16MHz crystal. The clock source works and I can program the chip using ISP. I programmed to it a project to control an I2C device.
The chip runs at 5V and the D+ D- lines are protected by 3.6V zeners (but 1W zeners, not low-power ones as suggested).
When I plug it in, the Linux host detects it as a low-speed device but fails to communicate with it.
Here is what the kernel on the host says:
usb 1-1.4: new low speed USB device using ehci_hcd and address 22
usb 1-1.4: device descriptor read/64, error -32
usb 1-1.4: device descriptor read/64, error -32
usb 1-1.4: new low speed USB device using ehci_hcd and address 23
usb 1-1.4: device descriptor read/64, error -32
usb 1-1.4: device descriptor read/64, error -32
usb 1-1.4: new low speed USB device using ehci_hcd and address 24
usb 1-1.4: device not accepting address 24, error -32
usb 1-1.4: new low speed USB device using ehci_hcd and address 25
usb 1-1.4: device not accepting address 25, error -32
Any advice on how to debug this? Are the 1w zeners at fault?
What I thought of doing is adding an LED that will tell me how far the code goes, whether it sees the hosts requests, etc. But I'll appreciate any advice.
Thanks, Sivan Toledo
I built an AVR-USB device using an ATtiny861 with a 16MHz crystal. The clock source works and I can program the chip using ISP. I programmed to it a project to control an I2C device.
The chip runs at 5V and the D+ D- lines are protected by 3.6V zeners (but 1W zeners, not low-power ones as suggested).
When I plug it in, the Linux host detects it as a low-speed device but fails to communicate with it.
Here is what the kernel on the host says:
usb 1-1.4: new low speed USB device using ehci_hcd and address 22
usb 1-1.4: device descriptor read/64, error -32
usb 1-1.4: device descriptor read/64, error -32
usb 1-1.4: new low speed USB device using ehci_hcd and address 23
usb 1-1.4: device descriptor read/64, error -32
usb 1-1.4: device descriptor read/64, error -32
usb 1-1.4: new low speed USB device using ehci_hcd and address 24
usb 1-1.4: device not accepting address 24, error -32
usb 1-1.4: new low speed USB device using ehci_hcd and address 25
usb 1-1.4: device not accepting address 25, error -32
Any advice on how to debug this? Are the 1w zeners at fault?
What I thought of doing is adding an LED that will tell me how far the code goes, whether it sees the hosts requests, etc. But I'll appreciate any advice.
Thanks, Sivan Toledo