LINUX.ORG.RU

Как у Нокии получилось сделать Micro-USB только на дату?

 ,


0

2

Пишу в дженерал, ибо это про Hardware, но не про Linux. Nokia 2700 и вторая нокиа, модель которой я опять забыл, заряжаются по проприетарному круглому входу, но по Micro-USB могут только гонять данные. Причём комп на это нормально реагирует и даже может определить устройство. У той второй нокии так вообще определяет не устройство, а КАБЕЛЬ! Как ttyACM0! А, собсна, это как вообще? Как можно не уметь получать питание по USB?

  • 5V
  • Data+
  • Data-
  • GND

Нельзя же оставить только два контакта даты - устройство тупо не определится

Перемещено hobbit из general



Последнее исправление: Tyse_EX (всего исправлений: 1)

Пишу в дженерал

не устройство, а КАБЕЛЬ! Как ttyACM0!

Так вот почему два топика назад меня посчитали за ИИ…

Tyse_EX
() автор топика
Последнее исправление: Tyse_EX (всего исправлений: 1)

Во-первых, ты уверен что 5V линия как-то участвует в определении устройства? Я вот сомневаюсь.

Во-вторых, поставить на 5V линию какую-то небольшую нагрузку и разрешить заряжать от неё аккумулятор это разные вещи.

firkax ★★★★★
()

Как флешка или усб-модем.

andytux ★★★★★
()

вообще определяет не устройство, а КАБЕЛЬ! Как ttyACM0!

Кабель не может определяться, т.к. это просто провода.
С каких пор труба не может иметь сериальный интерфейс для коммуникаций? ttyUSBx и ttyACMx это братья близнецы.

Ты удивишься, но всякие микроконтроллеры типа ардуино подключаются по usb и тоже прикидываются ttyACMx.

vel ★★★★★
()
Ответ на: комментарий от vel

Ты удивишься, но всякие микроконтроллеры типа ардуино подключаются по usb и тоже прикидываются ttyACMx.

У этих прямо на плате виден CH340G или FT232RL. У меня, под вторую нокию, был какой-то кабель, который в телефон входит каким-то проприетарным входом, по форме напоминающим Mini-DisplayPort, только ещё раза в три меньше. Скорее всего у меня прямо в начале кабеля находится USB-to-TTL. В Dmesg писалось про обнаружение ttyACM0 даже при подключении только кабеля в ПК

Tyse_EX
() автор топика
Последнее исправление: Tyse_EX (всего исправлений: 1)
Ответ на: комментарий от Tyse_EX

В те времена и отдельных кабелей было полно с FT232RL и устройства были которые подключались только таким кабелем, т.к. COM-порт хотели. Видимо нокия что-то такое же замутила в своем проприетарном кабеле.

Loki13 ★★★★★
()

Диод на шину питания в запертом направлении, вот и всё.

yars068 ★★★★★
()

Пишу в дженерал

Переношу в S&E.

hobbit ★★★★★
()

А для этого что-то надо делать? Вроде же наоборот. Что-то нужно делать чтобы зарядка от usb появилась

cobold ★★★★★
()
Ответ на: комментарий от Tyse_EX

Про кабель уже, вроде, выяснили.

А про «небольшую нагрузку» я не понял.

Нельзя же оставить только два контакта даты

Дак не два, а три контакта (дата и GND) нужны для работы USB 1. Ток/нагрузку по +5 В мало кто смотрит, она только для питания. Host определяет подключение устройства по подтяжке со стороны Device линии D+ или D- к 3,3 В. Этим определяется и подключение и скорость FS или LS. А Device находится в постоянном ожидании данных с линий D+/D- и должен быстро на них отвечать. Если Device имеет своё питание и может сам подтягивать линии D+/D- к 3,3 В относительно GND хоста, то ему вобще не надо +5 В от USB.

mky ★★★★★
()
Ответ на: комментарий от vel

ttyUSBx и ttyACMx это братья близнецы

О, а может ты подскажешь разницу? А-то я всю жись воспринимаю как синонимы, а ведь должна быть разница)

pihter ★★★★★
()
Ответ на: комментарий от cobold

Что-то нужно делать чтобы зарядка от usb появилась

Нет, можешь просто снимать питание с двух пинов. 0.1А гарантировано спецификацией, но по факту почти все тебе выдадут гораздо больше. Что-то нужно делать, чтобы на USB появилось напряжение выше 5 вольт.

vbr ★★★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от pihter

TLDR разные драйверы используют разное именование. Почему не одинаковое? Видимо так сложилось исторически.

Есть расплывчатое понятие последовательного протокола UART, который раньше часто использовался с COM-портами.

Есть протокол USB.

Есть реализация протокола UART поверх протокола USB. Этих реализацией несколько, от разных производителей: например от FTDI, от WCH. Для этих реализацией есть как микросхемы, куда с одной стороны подключаешь USB, с другой стороны подключаешь UART от микроконтролера, так и драйверы для компьютера от производителя. У разных производителей свои протоколы, поэтому драйверы тоже разные.

В Linux в ядро включили ряд драйверов от популярных производителей. Поэтому при подключении устройства от FTDI к USB-порту, драйвер загружается автоматически. В старой винде, например, драйвер нужно было устанавливать. В линуксе это драйверы usbserial + ftdi_sio, например.

Эти драйверы, собственно и создают ttyUSB устройства.

Кроме того в протоколе USB есть понятие CDC-ACM класса. Я тут могу ошибаться, но вроде это условно говоря стандартный протокол, прописанный где-то в талмудах USB спецификаций. Вероятно его «придумали» гораздо позже, чем появились устройства от FTDI. Особенно стандартный протокол хорош тем, что для него не нужны проприетарные драйверы для ПК. В ядре драйвер называется cdc_acm. И этот драйвер создаёт ttyACM устройства.

Резюмируя - со стороны юзерспейса это одно и то же, со стороны ядра это разные драйверы, со стороны «железа» это разные чипы.

vbr ★★★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от vbr

Дорожки на плате хотябы нужно развести от этих пинов разъема?

cobold ★★★★★
()
Ответ на: комментарий от pihter

Нет. Гугление говорит, что разница совсем небольшая.

ttyACM для тех кто использует стандартный протокол USB CDC ACM, а ttyUSB - это для проприетарных реализаций с нестандартными расширениями.

Для процесса эти устройства практически неразличимы.

vel ★★★★★
()
Последнее исправление: vel (всего исправлений: 1)
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)