Jump to content

    
Sign in to follow this  
viakon

stm32f105 LWIP+USB Host+RNDIS как связать?

Recommended Posts

Задача прицепить к stm32f105 RNDIS устройство. LWIP освоен ранее, USB HOST CD класс запустил из примеров. Я так понимаю пакеты LWIP это уровень NDIS драйвера. Далее нужна прокладка RNDIS чтоб пакеты LWIP запихать в USB. А вот как их увязать между собой не соображу. Толкового описания RNDIS не нашел :(.

Share this post


Link to post
Share on other sites
36 минут назад, viakon сказал:

Задача прицепить к stm32f105 RNDIS устройство. LWIP освоен ранее, USB HOST CD класс запустил из примеров. Я так понимаю пакеты LWIP это уровень NDIS драйвера. Далее нужна прокладка RNDIS чтоб пакеты LWIP запихать в USB. А вот как их увязать между собой не соображу. Толкового описания RNDIS не нашел :(.

Вы хабр смотрели на предмет RNDIS?

Там есть один достаточно емкий пример

39 минут назад, viakon сказал:

 USB HOST 

Это точно?

 

Share this post


Link to post
Share on other sites

RNDIS не нужен. Устройство, судя по дескрипторам,  CDC Ethernet Control Model. Линукс с ним обменивается нормально. Где бы найти толковое описание как работать с ним со строны хоста. Примеры нашел только для девайса.

Share this post


Link to post
Share on other sites

Все оказалость просто, скачанная с сайта st библиотека была старой и не работала. Воспользовался библиотекой сгенеренной Cube, все пошло.

Share this post


Link to post
Share on other sites
On 4/19/2019 at 12:40 PM, viakon said:

Все оказалость просто, скачанная с сайта st библиотека была старой и не работала. Воспользовался библиотекой сгенеренной Cube, все пошло.

в новом кубе есть поддержка RNDIS_HOST ?

Share this post


Link to post
Share on other sites
On 4/19/2019 at 12:40 PM, viakon said:

Все оказалость просто, скачанная с сайта st библиотека была старой и не работала. Воспользовался библиотекой сгенеренной Cube, все пошло.

извините, но тогда я не понимаю, вы же написали: Воспользовался библиотекой сгенеренной Cube, все пошло.
Если не трудно объясните пожалуйста, что именно вы сгенерили и что пошло? И где тогда брали RNDIS_HOST?
 

Edited by nvn

Share this post


Link to post
Share on other sites
14 minutes ago, nvn said:

извините, но тогда я не понимаю, вы же написали: Воспользовался библиотекой сгенеренной Cube, все пошло.
Если не трудно объясните пожалуйста, что именно вы сгенерили и что пошло? И где тогда брали RNDIS_HOST?
 

 

Все верно, не пользуюсь. Выковырял библиотеку из куба и все. В процессе я понял что RNDIS_HOST мне тоже не нужен, т.к. устройство CDC Ethernet Control Model, а это не RNDIS. Посмотрите внимательно на дискрипторы вашей железки, в моем случае устройство могло работать как RNDIS, так и ECM. Мне удобней показался ECM.

Share this post


Link to post
Share on other sites
2 hours ago, viakon said:

Все верно, не пользуюсь. Выковырял библиотеку из куба и все. В процессе я понял что RNDIS_HOST мне тоже не нужен, т.к. устройство CDC Ethernet Control Model, а это не RNDIS. Посмотрите внимательно на дискрипторы вашей железки, в моем случае устройство могло работать как RNDIS, так и ECM. Мне удобней показался ECM.

Ясно. Спасибо, за ответ.
У меня "железки" двух типов, старая версия - только RNDIS, новая версия - как вы писали: устройство могло работать как RNDIS, так и ECM.
А ECM реализация есть в библиотеке stm, которую вы взяли из куба? И она отлично работает?
Делал раньше свой самопал RNDIS_HOST для at91sam7 через max3421e (spi), думал у stm появилась реализация.

Share this post


Link to post
Share on other sites
13 minutes ago, nvn said:

Ясно. Спасибо, за ответ.
У меня "железки" двух типов, старая версия - только RNDIS, новая версия - как вы писали: устройство могло работать как RNDIS, так и ECM.
А ECM реализация есть в библиотеке stm, которую вы взяли из куба? И она отлично работает?
Делал раньше свой самопал RNDIS_HOST для at91sam7 через max3421e (spi), думал у stm появилась реализация.

ECM реализации нет. В библиотеке реализовано только CDC. Но чем и хорош ECM, что это надстройка над CDC. Т.е. просто отправляю/принимаю Ethernet пакеты через CDC и все. В CDC эти пакеты разбиваются/собираются. Далее их только обработать LwIP.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this