I am using TIVA TM4C1237H controller .I wish to interface Keyboard and Pendrive to it.I am using FSUSB11MTX for multiplexing them.Using a GPIO pin I select the FSUSB11MTX . Now Iam able to interface 2 keyboards and switch between them .But while using pendrive I am able to transfer files as long as there is no device in the other port.As soon as I connect any device in other port the system hangs and shows unknown device for both ports.
I guess there is issue in creating interrupts. Please look into the matter today itself ,as soon as possible.The development process is now interrupted by this minor USB glitch.
Regards, Dhanush Nair
"Please look into the matter today itself ,as soon as possible."
Who is expected to do this? Some of the Keil customers who happens to follow this forum?
Hi all
Sorry , it seems to be a poor choice of words by one of my colleagues and I apologize for that on his behalf.What he actually means is that,
We have developed source code for both mass storage host and host keyboard individually in Cortex M4 (TIVA TM4C1237) , but now I wish to implement to write code for both in the one and only USB port that I have on this controller.I have a switching IC which switches D+ and D- between 2 USB ports as and when I wish to.
Now the issue:
> When pendrive is running , I cannot insert any device in the second port . > However I can implement 2 host keyboards with switching between the 2 keyboards
Please help ..
Regards and Thanks in advance, Dhanush Nair
USB devices aren't designed to be muxed in/out like that. There is signalling happening even when you have no data to transfer.
Note that it's possible to have multiple functionality on a single USB interface. On one hand, you could have compound devices that implements multiple functions. On the other hand, a USB hub allows a computer to see multiple different devices connected to the same port.
Hi Westermark,
Thanks for your reaponse. Let mew elaborate to you my situation.
My controller has one USB port.I wish to interface a keyboard and pendrive. Most of the time I am using a keyboard but for dumping some data ,I sometime require a pendrive. On pressing a particular key in the keyboard , the D+ and D- lines of the USB shifts from keyboard to pendrive . After successful data dumping D+ and D- lines shifts back to keyboard.
Till now all seems to work nicely as expected for the first time after power-up.
But when I do data dumping again , the the controller fails to enumerate the pendrive , and data dumping fails and control comes back to keyboard without data dumping.If I restart the system , then again the above scenario.
I dont wish to restart the machine , every time for this.
So - are you able to turn off power to that thumb drive while you have D+/D- disconnected?
Physically removing and connecting the pendrive doesnot solve the issue. I have to power off and power on the machine to make the thumbdrive work again.
But how do you let your host side know that you are going to disconnect your thumb drive?
Does your USB host controller get any information? Does your file system driver get any information?
View all questions in Keil forum