GenaSPB 11 3 декабря, 2020 Опубликовано 3 декабря, 2020 (изменено) · Жалоба Столкнулся с тем, что ни на CP2102 ни на моих USB CDC ACM состояние линий портов не показывают ни одна из программ, до которых смог дотянуться. Из свежепроверенного - RealTerm ничего не показывает. Еще раз вопрос - чем смотрите? Изменено 3 декабря, 2020 пользователем GenaSPB Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbinger 10 4 декабря, 2020 Опубликовано 4 декабря, 2020 · Жалоба YAT? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
r2axz 0 4 декабря, 2020 Опубликовано 4 декабря, 2020 · Жалоба 7 hours ago, GenaSPB said: Столкнулся с тем, что ни на CP2102 ни на моих USB CDC ACM состояние линий портов не показывают ни одна из программ, до которых смог дотянуться. Из свежепроверенного - RealTerm ничего не показывает. Еще раз вопрос - чем смотрите? Я для тестов использовал Termite 3.4 (by CompuPhase). У него в настройках есть секция "Plug-ins", а в ней "Status LEDs", вот им и смотрю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 4 декабря, 2020 Опубликовано 4 декабря, 2020 · Жалоба 4 hours ago, Harbinger said: YAT? Показывает! Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 5 января, 2021 Опубликовано 5 января, 2021 (изменено) · Жалоба Вроде тема обсуждения экономии ендпоинтов за счет совместного использования общего номера для нотификации продолжалась тут. Новости с фронтов: В устройстве заменил прошивку на обновленную. W10, x64. Устройство перестало опознаваться (составное УСБ устройство, с восклицателныи знаком про то что не удалось загрузить драйвер). Есть компьютер в котором ранее устройство не подключалось - с аналогичными симптомами. Зависимости от версии/билда W10 выявить не удалось - есть компьютеры нормально работающие и есть не опознающие. С одинакоаой версией и билд номером. Изменено 5 января, 2021 пользователем GenaSPB Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
masya-chel 1 24 января, 2021 Опубликовано 24 января, 2021 · Жалоба Отличная работа! Огромное спасибо автору проекта. Недавно понадобилось логировать обмен на UART интерфейсе одного устройства, т.е. понадобилось два USB-UART адаптера одновременно. Прошил плату BluePill прошивкой автора, установил драйвер (Win7 x64), запустил терминал. Всё работает отлично. Кстати, на моей плате для энумерации USB установлен резистор 10 кОм, но несмотря на это всё работает. Позже заменю резистор на 1,5 кОм. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
r2axz 0 3 февраля, 2021 Опубликовано 3 февраля, 2021 · Жалоба On 1/5/2021 at 4:58 PM, GenaSPB said: Вроде тема обсуждения экономии ендпоинтов за счет совместного использования общего номера для нотификации продолжалась тут. Новости с фронтов: В устройстве заменил прошивку на обновленную. W10, x64. Устройство перестало опознаваться (составное УСБ устройство, с восклицателныи знаком про то что не удалось загрузить драйвер). Есть компьютер в котором ранее устройство не подключалось - с аналогичными симптомами. Зависимости от версии/билда W10 выявить не удалось - есть компьютеры нормально работающие и есть не опознающие. С одинакоаой версией и билд номером. Спасибо за информацию. Недавно "лазил к вам в код" и видел commit messages на эту тему. Собственно лазил по поводу идей для борьбы с общей бедой с RTS и виндой. Но похоже проблема решается только с помощью workaround на уровне пользовательского приложения: типа хочешь поставить RTS, поставь заодно и DTR. Хоть даже в то же самое состоянии, но поставь))) Ох уж эти милые "особенности" Микрософта) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 3 февраля, 2021 Опубликовано 3 февраля, 2021 (изменено) · Жалоба Да с rts и виндой так и есть. Было перепробовано много вариантов борьбы через атрибуты дескрипторов. Предлагал автору OmniRig включить соответствующие изменения в его проект - был послан. Код был приложен. Есть предположение что неопознание устирйства с shared endpoints зависит от наличия хабов и их особенностей. Изменено 3 февраля, 2021 пользователем GenaSPB Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
r2axz 0 3 февраля, 2021 Опубликовано 3 февраля, 2021 · Жалоба 5 hours ago, GenaSPB said: Да с rts и виндой так и есть. Было перепробовано много вариантов борьбы через атрибуты дескрипторов. Предлагал автору OmniRig включить соответствующие изменения в его проект - был послан. Код был приложен. Есть предположение что неопознание устирйства с shared endpoints зависит от наличия хабов и их особенностей. Я, кстати, дизассемблировал usbser.sys на Windows 10 и посмотрел в чем там дело. Благо у MS есть отладочные символы для этого драйвера, поэтому разобраться что там где - тривиально. Так вот, надежды нет: если посмотреть на функции SetBreak или SetClrDtr, то там в какой-то момент происходит "call ClassVendorCommand" и это та функция, которая шлет нужный нам SetControlLineState. А вот пара функций SetRts и ClrRts такого вызова внутри себя просто не содержит. То есть, выглядит все так, что просто забыли дописать вызов функции и все. Такая вот типичная и банальная бага, никакой магии. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Шаманъ 1 3 марта, 2021 Опубликовано 3 марта, 2021 · Жалоба On 1/5/2021 at 4:58 PM, GenaSPB said: Вроде тема обсуждения экономии ендпоинтов за счет совместного использования общего номера для нотификации продолжалась тут. Новости с фронтов: Для информации - у меня на восьмерке никогда не работала такая экономия (проверял еще года три назад), на XP SP3 работает. Смысла особого делать не по стандарту нет (не смотря на немалый соблазн сэкономить :) ) девайс может перестать работать в самый неподходящий момент. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 3 марта, 2021 Опубликовано 3 марта, 2021 · Жалоба Так и перестал... причём по прибытии к заказчику.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
masya-chel 1 26 июля, 2021 Опубликовано 26 июля, 2021 (изменено) · Жалоба Оформил в виде готового устройства: -прикрутил светодиодную индикацию, -добавил выбор напряжения логических уровней UART, -добавил ESD защиту, -состряпал платку вместо BluePill, -запихнул в корпус. Задействовал только линии RX/TX, т.к. остальные мне не понадобились. Ссылка на статью Изменено 26 июля, 2021 пользователем masya-chel Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 26 июля, 2021 Опубликовано 26 июля, 2021 · Жалоба А почему подтяжка на USB DP гвоздями прибита? Надо же было на любую свободную ногу ее подключить. В таком виде устройство не годится для работы: чуть что, придется провод вытаскивать и втыкать обратно. Ну и я таки не понимаю практической пользы от такого устройства. Моим ответом на бессмысленность этого был "семипортовый CDC" на одном микроконтроллере. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbinger 10 28 июля, 2021 Опубликовано 28 июля, 2021 · Жалоба 26.07.2021 в 19:32, Eddy_Em сказал: чуть что, придется провод вытаскивать и втыкать обратно. А что именно? Как узнать, что надо переподключиться? 26.07.2021 в 19:32, Eddy_Em сказал: Ну и я таки не понимаю практической пользы от такого устройства. Имеющие дело с серийным производством поймут. Тестовый стенд, к примеру. Ещё бы программатор туда добавить... :) 26.07.2021 в 19:32, Eddy_Em сказал: Моим ответом на бессмысленность этого был "семипортовый CDC" на одном микроконтроллере. С семью UART? Почему бы нет. Ну если есть достаточно денег, то можно и 8-портовую моксу купить, чего уж. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 28 июля, 2021 Опубликовано 28 июля, 2021 · Жалоба 3 hours ago, Harbinger said: Как узнать, что надо переподключиться? Ну, например, после перезагрузки МК. Особенно после прошивки: если не сделать управляемой подтяжки (у STM32F0x2 такой проблемы нет: там подтяжка встроена в МК), придется каждый раз после прошивки МК выдергивать шнурок USB и вставлять обратно, чтобы компьютер выполнил энумерацию. 3 hours ago, Harbinger said: Тестовый стенд, к примеру. Ну, не знаю: можно же N преобразователей на PL2303 или Ch340 воткнуть. Но, видимо, кому-то это все же нужно на базе 1 устройства. 3 hours ago, Harbinger said: С семью UART? Нет, конечно: у имеющихся у меня в наличии STM'ок столько усартов нет. Все порты были виртуальными. Да я и никогда не делал прямого преобразователя USART-USB: нет такой задачи, для этого достаточно баксовый переходничок использовать. Я CDC делаю исключительно для "общения" с микроконтроллером (а N CDC может быть нужно, если, скажем, по первому идет базовое "общение", по второму - отладка, по третьему - конфигурация и т.п.). В основном же мои железки выдают себя за один-единственный CDC (точней, даже не совсем CDC, а эмулятор PL2303). Кстати, STM32F103 мало того, что самые неполноценные из ST'шных микроконтроллеров, так еще и не умеют одновременно CAN и USB. Поэтому большинство моих поделок - на STM32F0x2. Постепенно я начал осваивать STM32F303, но пока нет нужды в флоатах и мощностях аж Cortex-M4. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться