Gl850a Usb Hub Driver
USB Hub Port Disable Problem I modified the Microchip USB stack to support a hub (not a trivial task). I'm having a problem with the Genesys Logic GL850 Hub Controller (A Philips ISP1521 Hub Controller works). The GL850 randomly disables a port during active communications.
Usb Hub Gl850g, Wholesale Various High Quality Usb Hub Gl850g Products from Global Usb Hub Gl850g Suppliers and Usb Hub Gl850g Factory,Importer,Exporter at Alibaba.com.
The packets are well within the SOF frame with a 30+us delay after SOF and 100us+ before the next SOF. I'm connecting printers, drives, and keyboards to the hub. The GL850 works with another one of our instruments (Digi NS9360 host) without a problem. Any suggestions? The hub can be external or bus powered and the problem persists. The PIC VBUS line is looks good on scope.
I'm also having problems with the GL850G too. I found that putting 10 to 25µΩ series resistors on the PIC32 D+ and D- helps even more. At this point I don't seem to have problems with a single hub connected device, but when I connect a EPSON printer, SEIKO printer, and SanDisk flash drive, then usually the flash drive randomly gets disabled when I print stuff to all three devices simultaneously. I have also found that I spuratically get an oscillation with a 2ns period, which I notice during some transmissions. There may be some instability between the PIC32 transceivers and the GL850 chips.
Note, the oscillation occurs with and without a hub. I would like to investigate this more, but I don't have a 1 GHz logic analyzer. I have queried Microchip about these issues, but they haven't gotten back to me. Apparently, their tech support doesn't include a USB guru. Thanks for any assistance.
The SOF interval is good. Note, I believe that hubs are required to be able to go without 1 or 2 SOFs. I mean SOF tolerance (+/-0.05%) is stricter than FS bit rate (+/-0.25%) This tolerance can't be achieved by the on-chip FRC OSC. A crystal is necessary.
If SOF interval goes out of spec, hub can't track it. The result is unpredictable. I limit my transactions to 8 per frame to 8 to ensure that I stay away from the SOFs. Set U1SOF register (SOF threshold), and then the PIC host controller doesn't start any transaction after this threshold. The typical value of U1SOF on the data sheet is wrong.
It doesn't count in bit stuff. The GL850 works with another CPU that I use (Digi NS9360), so it's likely a PIC problem. The problem persists if the hubs are self powered or bus powered, so it should not be a current problem. The PIC does work with a ISP1521 hub, so this leads me to believe that the firmware is okay. I have seen uncontrolled oscillation on the D+ and D- lines with a 2ns period. The oscillation builds up and will completely flip the state of the D+ and D- lines.
This happens randomly with and without a hub. Free Download Broward County Zip Code List Excel Programs Training. Microchip hasn't responded with a explanation for this yet.
This is not good. It will be disappointing if I have to switch CPUs (maybe NXP) or use a SPI driven usb host chip (MAXIM). Microchip got back with me on the oscillation problem.
They thought that the hub was going into a test mode, which I did not know about; I'm a USB 1.1 guy, and USB 1.1 hubs don't have a test mode. Microchip is worried about SOFs right after reset. Note, usb_host.c enables SOFs right after reset. They implied that I should wait after the reset recovery interval (10ms) before applying any traffic including SOFs. Tikka Serial Number Year Guide. I don't think that I can wait that long because the hub should suspend in 3ms without SOFs. So, I waited two T1MSEC interrupts (1 ->2ms) before applying SOFs, which fixed at least one of my PCBs (Praise the Lord); I have to check my other PCB.