Hello,
I am working on a collage project with your great VUSB Framework. I am implementing a USB/RS232 Interface to control 1-8 servos. My implementation is in a stable status, but I have made some strange monitoring:
I am using a Atmega 8 overclocked to 20MHZ (works good), because I need more time during the USB communication.
My PWM signal for the servos is very time critical, same like the USB communication, so both branches are in concurrency. The ISR`s for PWM does not have a sei in it, but they are very short (~30clocks), but I does not have a problem with the USB communication.
The main problem in this implementation is, if a USB interrupt occurs between the pwm cycles and needs to much time, the pwm signal jitters.
The strange effect is, if I connect my device to one specific USB Hub (I have only this, but it is USB2.0, but very slow with other devices) everything works very good.
On opposed to this if I connect my device directly to my PC, I have big problems with jitter.
Did some one can explain me, why these effects occur? And how I can force the behavior I have with these HUB?
if someone is interested in my code: SVN: http://OpenSVN.csie.org/BaRobot with public download access
Big thanks
Chris
Different Behavior with a HUB and without a HUB
Re: Different Behavior with a HUB and without a HUB
Your problem depends heavily on timing. Since USB 2.0 hubs implement low speed communication on their own, you are effectively dealing with a different USB host implementation when you insert a hub. This different implementation may use different timeouts, retry intervals etc.