USB
USB (Universal Serial Bus) — внешняя шина: то, что торчит из корпуса и подключается на ходу. Её задача — быть универсальной: один разъём и один набор правил для клавиатуры, камеры, диска, телефона и мыши.
Внутри USB устроен как дерево. Контроллер в компьютере — корень, к нему подключаются устройства и хабы, к хабам — ещё устройства. Глубина — до семи уровней, на одной шине до 127 адресов.
Контроллер, шины и хабы
| Понятие | Что это |
|---|---|
| Хост-контроллер (xHCI) | Устройство в компьютере, которое управляет шиной |
| Корневой хаб | Встроен в контроллер; от него растёт дерево |
| Хаб | Разветвитель: один вход, несколько выходов |
| Устройство | То, что вы воткнули |
Современный контроллер (xHCI) даёт две шины: одну для USB 2.0 и одну для USB 3.x. Они независимы, поэтому в системе видно больше «шин», чем физических контроллеров. В этом ноутбуке контроллеров два — чипсетный и thunderbolt-ный — и шин, соответственно, четыре.
Скорости
| Версия | Полоса | Где встречается |
|---|---|---|
| USB 1.1 | 12 Мбит/с | мыши, клавиатуры, Bluetooth-модули |
| USB 2.0 | 480 Мбит/с | камеры, флешки, звуковые карты |
| USB 3.2 Gen 1 | 5 Гбит/с | обычные внешние SSD |
| USB 3.2 Gen 2 | 10 Гбит/с | быстрые SSD, NVMe-корпуса |
| USB4 | 20/40 Гбит/с | док-станции, внешние GPU (внутри — PCIe) |
Названия запутаны намеренно историей: «USB 3.0», «3.1 Gen 1» и «3.2 Gen 1» — это одно и то же 5 Гбит/с. Смотреть надо не на название, а на цифру.
Питание
USB не только данные, но и питание:
- USB 2.0 — до 500 мА на порт;
- USB 3.x — до 900 мА;
- USB Power Delivery — до 100 Вт и больше: по одному кабелю идёт и зарядка ноутбука, и данные.
Поэтому «не заряжается» и «не определяется» — разные проблемы: первая про питание и протокол PD, вторая про данные и перечисление.
Классы устройств и драйверы
USB-устройство сообщает, что оно такое — класс. От класса зависит драйвер:
| Класс | Что это | Драйвер в Linux |
|---|---|---|
| HID | мыши, клавиатуры, игровые устройства | usbhid |
| Mass Storage / UAS | флешки, внешние диски | usb-storage, uas |
| Video (UVC) | веб-камеры | uvcvideo |
| Audio | звуковые карты | snd-usb-audio |
| Wireless | Bluetooth-модули | btusb |
| Hub | разветвители | hub |
Тип передачи тоже зависит от устройства: control — служебные команды, interrupt — мышь и клавиатура (маленькие частые пакеты), bulk — диски (большие блоки без гарантии времени), isochronous — камера и звук (важна своевременность, а не гарантия доставки). Отсюда и характерные симптомы: звук «булькает» при нехватке полосы, а диск просто медленнее.
Как это видно в системе
$ lsusb # список: шина, устройство, ID, название
$ lsusb -t # дерево с портами и скоростями
$ lsusb -v -d 0bda:565c # всё про конкретное устройство
$ ls /sys/bus/usb/devices # 1-1, 1-1.2, 1-1.2:1.0 — шина-порт и интерфейс
В sysfs имя устройства читается так: 1-1.2 — шина 1, порт 1, подпорт 2; :1.0 — конфигурация 1, интерфейс 0. Это удобно, когда надо понять, куда именно воткнут диск.
Что в этом ноутбуке
$ lspci | grep -i usb
00:14.0 USB controller: Intel Cannon Point-LP USB 3.1 xHCI Controller
39:00.0 USB controller: Intel JHL6340 Thunderbolt 3 USB 3.1 Controller
$ lsusb -t
Bus 001: root_hub, xhci_hcd/12p, 480M ← чипсет, USB 2.0
Port 003: Xiaomi Wireless Mouse 3 (HID, 12M)
Port 006: Integrated Webcam (Video, 480M)
Port 010: Bluetooth 9460/9560 (Wireless, 12M)
Bus 002: root_hub, xhci_hcd/6p, 10000M ← чипсет, USB 3.x (пусто)
Bus 003: root_hub, xhci_hcd/2p, 480M ← Thunderbolt, USB 2.0 (пусто)
Bus 004: root_hub, xhci_hcd/2p, 10000M ← Thunderbolt, USB 3.x (пусто)
Три вывода из этой картинки:
- устройства не гонятся за скоростью — мышь и Bluetooth сидят на 12 Мбит/с, камера на 480. Быстрая шина им не нужна;
- USB 3-шины пустуют — это нормально: они ждут флешку или внешний диск;
- число портов в скобках (
12p,6p,2p) — сколько портов обслуживает контроллер.
Когда что-то не так
| Симптом | Что смотреть |
|---|---|
| Устройство не видно | `dmesg |
| «Недостаточно питания» | USB-хаб без питания; порт 2.0 вместо 3.x; dmesg про over-current |
| Диск медленный | lsusb -t — не сел ли на 480 Мбит/с; кабель (не все тянут USB 3) |
| Камера «занята» | другое приложение держит устройство; перезагрузка модуля uvcvideo |
| Устройство отваливается | управление питанием порта: dmesg, powertop, отключение autosuspend |
Источники
- USB-IF: https://www.usb.org/ — спецификации, включая Power Delivery и USB4.
- Документация ядра: https://docs.kernel.org/driver-api/usb/ — подсистема USB.
man 8 lsusb,man 1 lsusb,man 8 usbhid.- Дерево USB и устройства — с ноутбука Dell Latitude 7400 (Ubuntu 26.04), 25.10.2026.
Что ещё не проверено
- Скорости в таблице — по спецификации. Реальная скорость зависит от кабеля, порта и самого устройства: USB 3-устройство в порту 2.0 работает на 480 Мбит/с.
- Проверка питания (ток на порту, PD-профили) на этой машине не делалась: нужен внешний USB-тестер или
powertopс правами root.
Комментарии
Пока комментариев нет.