USB Low Speed

Status
Not open for further replies.
It depends....

But if the device side (as opposed to the host side) is a 32 bit Teensy, the USB hardware has only one 1.5K pullup resistor inside the chip, internally connected to the D+ line. So unless you add external circuitry to pull up the D- line, the hardware simply isn't capable of telling the host to use low speed mode.
 
Whether device mode would even work at low speed if you did go to the trouble of wiring up the resistor to the D- line is a good question. Obviously Freescale never intended their device mode to ever run at low speed.

Host mode does have weak 15K pulldowns on both signals, and it does work at both speeds (or 3 speeds in the case of USB1 in host mode on Teensy 3.6)
 
Edit: In Software.

No, I do not believe this is possible. There is an option to limit the PHY to 12 Mbit/sec, so 480 is never used. But I haven't seen any option to limit to 1.5 Mbit/sec.

It really looks like they followed the USB spec, and the USB spec is pretty clear that the device gets to choose the speed. The host has to use 12 or 480 if the pullup is on the D+ line, where the 12 vs 480 depends on whether the device sends a special chirp signal. The speed detection is all done in the hardware. Software appears to have no control at all over the process. You only get to find out after the hardware connects, by reading the PORTSC1 register.
 
Frank, were you looking to limit the interruption to VGA when using the host controller - like I found HID devices to do? If so then it would be interesting to have a way to have the HOST code restrict how far it chains a device to just sign it up as HID and ignore other capabilities?
 
It was just a guess... but i noticed a few minutes ago, my keyboards connects with 1.5 MBit anyway. So this question was not needed..
I'm just browsing through my dumb ideas ;-)
 
The RAM in these chips is organized in 2 physical banks, separated at address 1FFFFFFF to 20000000.

Does arranging for the VGA buffers to be in a different physical bank from the USB buffers help?
 
Yes, already tried that! I don't see any reason for the problems..
usb-device: there is some minor flickering, if you just start the serial monitor - flickering stops when closing it. no flickering with usb-hid !
usb-host: very heavy pixel-displacment as soon the keyboard connects (up to 3 pixels displacement - which is a long time)

I tried to find information about the USB - "local dma engine" - but there is almost nothing in the reference manual. Does it even use the crossbar-switch ?
It seems to me that it directly connected to the sram-backdoor ?

edit: too late here.. good night ;)
 
Status
Not open for further replies.
Back
Top