This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
This is with reference to the current and well as previous versions of TI-SDK for AM335x SiTARA processor. We have developed a product (device) based on the AM335x processor and also a Windows based Application which uses SFTP to load files from the device for generation of reports and records.
The issue is well known that the USB connection of the device is wrongly recognized as a USB-Serial Port rather than an RNDIS device in Windows10. With Windows7 the issue seems non existent. The issue has something to do with g_multi and g_ether modules, we have tried both of them.
I'm writing this after much deliberation and I have already read a lot of forums - tried fixes regarding the issue and nowhere the solution is imminent. I know that this forum doesn't support queries related to Beaglebone open source OS release, but it is worth to mention that it has somehow resolved the issue of USB-RNDIS with Windows10.
So there must be some way to do this in the TI-SDK also. Please guide with the solution.
Hi Anwej,
Anwej Alam21 said:but it is worth to mention that it has somehow resolved the issue of USB-RNDIS with Windows10.
It sounds like there is a solution, what is it?
Hello,
I meant to say that the Beaglebone OS has the issue fixed but TI-SDK is still not fixed. This is causing a lot of issues.
Btw, we chose the TI-SDK over Open Source OS release because TI-SDK is officially supported by TI.
br
Anwej
Hi Anwej,
Do you know how is the issue solved in the Open Source OS? I initially thought the issue was due the Window 10 was missing USB-RNDIS driver.
Hello,
It has been solved, I know because I downloaded it and flashed it to my beaglebone. G_multi exposes all 3 devices over USB (RNDIS, MSC and VSP).
With WIndows10, they need additional OS descriptors to identify the device type. They must have developed some patches to solve the issue in g_multi and g_ether driver modules. The script at /opt/scripts/boot/am335x_evm.sh sets up the devices.
Can you please share where to download the Open Source OS? I'd like to take a look how it is solved.
It can be downloaded from https://beagleboard.org/latest-images , the Debian image will do.
It is in my work backlog now, probably in a few days or a week I will start looking at it.
Sorry for replying on someone else's thread
Bin,
This issue is something which we also face and has become critical for us as well. As per Anwej, the issue is fixed in Debian image of beaglebone. I googled a little and figured out that the patch as specified in the link
is what supposedly fixes the RNDIS issue. I did apply this (i am not sure if something is wrong with my testing or there is something beyond this fix which needs to be applied, but it doesn't seem to work out for me.) Could you have a look and let us know if this fix alone when applied on the TI kernel should be okay. Will be waiting for your reply.
Thanks.
Regards,
Fariya
Hi Anwej,
Did the patch work for you? Could you please reply?
Regards,
Fariya
Hi Fariya,
No it didnt work. Bin Liu is also not responding.
I might be possible that TI people already know what the issue is but fixing it would take them a Major release which might not be a part of their recent roadmap. Which is why they keep dodging around whenever someone asks about this issue.
I'm exhausted and a major product release is stuck because if this issue. Sometimes I feel bad having chosen AM335x over other offerings from Freescale, STM and NxP.
br
Anwej
Hi Anwej and Fariya,
Sorry for the delay.
I am still working on it but our office is closed since last Monday due to severe weather damage. I will update once I am back in office and made progress in debug.
Thanks Bin. FYI, below is the script which fixes the issue:
https://github.com/RobertCNelson/boot-scripts/blob/master/boot/am335x_evm.sh#L482-L593
Regards,
Fariya
Hi Fariya,
Thanks for the link. Have you confirmed the script solves the issue in your project?
Hi Bin,
Yes. The script fixes the issue. I incorporated in my device just the part of the script relevant to me i.e run_libcomposite function (which loads libcomposite driver, u_f_rndis driver, creates a USB gadget, specifies its configuration, adds relevant descriptors and finally binds it to UDC) Having done this, my device when connected via a USB cable to the laptop gets detected as a composite device which provides RNDIS functionality. I didn't need to install any driver... the native Windows RNDIS.NT.6.0 driver works well with my device.
Regards,
Fariya
Hi Fariya,
Thanks for the details of the solution. it definitely helps others who face the same issue.
Hi Anwej,
Are you able to check the solution above provided by Fariya?