Перейти к содержанию
    

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

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

 USB HOST 

Это точно?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

15 hours ago, dima_spb said:

Это точно?

Да. Нужен именно USB HOST.

Изменено пользователем viakon

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 4/19/2019 at 12:40 PM, viakon said:

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 minutes ago, nvn said:

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

Не знаю, я кубом не пользуюсь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 4/19/2019 at 12:40 PM, viakon said:

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

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

Изменено пользователем nvn

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

14 minutes ago, nvn said:

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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 появилась реализация.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 minutes ago, nvn said:

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...