USB - Wikiwand
USB in a NutShell
Front Page | USB-IF
Faster USB 3.0 Performance: Examining UASP And Turbo Mode
Thunderbolt 4 vs USB4 vs Thunderbolt 3 - What's Changed? - YouTube
USB4 来了,准备好换硬盘了吗? - YouTube
唠唠雷电 4:重新定义外接显卡 - YouTube
万能的雷电接口为什么还没有普及?——Thunderbolt 雷电协议的前世今生【科技杂谈】 - YouTube
USB Is A Lie - YouTube
USB4 is a Glorious Mess - YouTube
What’s the Difference Between Thunderbolt 3, Thunderbolt 4, and USB4 – Plugable Technologies
USB接口全科普2024版:命名终于变简单了,但厂商不愿意用,雷电5我成替身了? - YouTube 2024: USB
Standard | Speed | Year | Remarks |
---|---|---|---|
USB 4 | 40Gbps | 2019 | uses Thunderbolt 3 royalty-free |
Thunderbolt 3 | 40Gbps | 2017 | supports more protocols (DP, PCIe) |
USB 3.2/USB 3.2 Gen 2x2 | 20Gbps | ||
USB 3.1/USB 3.2 Gen 2x1 | 10Gbps | 2014 | Type C |
USB 3.0/USB 3.2 Gen 1 | 5Gbps (SuperSpeed) | 2011 | |
USB 2 | 480Mbps (Hi-Speed) | 2000 | 2001 Mini A/B, OTG; 2007 Micro A/B |
USB 1.0 | 12Mbps | 1996 | Type A was meant for upstream host; Type B was meant for downstream device |
Explaining USB: From 1.0 to USB4 V2.0 - YouTube
【科技杂谈 60】USB 发展史(1994-2019) - YouTube
Why Does USB Keep Changing? | Nostalgia Nerd - YouTube
USB Protocol
How does a USB keyboard work? - YouTube
How does USB device discovery work? - YouTube
USB Reverse Engineering - YouTube
Add USB To Your Electronics Projects! - The USB Protocol Explained - YouTube
V-USB on an ATmega328! - V-USB and HID Explained - YouTube
4 data lines: 5V, D+, D-, GND
D+ and D- form a differential pair to reduce environmental noise, they can represent 4 states (in high speed mode):
D+ | D- | |
---|---|---|
J | 1 | 0 |
K | 0 | 1 |
SE0 | 0 | 0 |
SE1 | 1 | 1 |
SE0: Single Ended Zero
SE1: Single Ended One
no transition -> 1
state transition -> 0
Start sync sequence: KJKJKJKK
End of Packet: JJ SE0
Human Interface Devices (HID)
Human Interface Devices (HID) Specifications and Tools | USB-IF
Universal Serial Bus HID Usage Tables 1.5
Keyboard input - ArchWiki
To access /dev/hidraw*
, add user to plugdev
for Ubuntu or use udev
rules for Arch.
USB Human Interface Devices - OSDev Wiki
Linux USB HID gadget driver — The Linux Kernel documentation
kernel.org/doc/Documentation/hid/hidraw.txt
How can I capture raw HID input on Linux? - Stack Overflow
Kaleidoscope/src/kaleidoscope/HIDTables.h at master · keyboardio/Kaleidoscope · GitHub
OpenAcousticDevices/USB-HID-Tool: A command line tool for accessing USB HID devices.
Changing color via CLI : r/qmk
apmorton/pyhidapi: hidapi bindings in ctypes
trezor/cython-hidapi: :snake: Python wrapper for the HIDAPI
rawhid in python · GitHub
Getting /dev/hidraw# via udev for script - Super User
More specific binding to HID than google/gousb: gousb provides low-level interface for accessing USB devices
karalabe/hid: Gopher Interface Devices (USB HID)
bearsh/hid: Gopher Interface Devices (USB HID)
xaionaro-go/hidrawmap: A tool to map hidraw events into keycodes
USB MITM/USB Emulation
USB Gadget Filesystem [Analog Devices Wiki]
USB Gadget API for Linux — The Linux Kernel documentation
Create your own USB gadget with GadgetFS
greatscottgadgets/Facedancer: modern FaceDancer core for multiple devices-- including GreatFET
Communicate with embedded system buses in userland Python code via /dev/ttyUSB0
Add your use to dialout
group
Travis Goodspeed's Blog: Emulating USB Devices with Python
GreatFET Product Line - Great Scott Gadgets
Welcome to the GreatFET Tutorials | greatfet-tutorials
GoodFET -- GoodFET42
GoodFET -- Tutorial
travisgoodspeed/goodfet: An embedded bus adapter for various microcontrollers and radios.
USB Type C
What is USB-C? It's Not As Simple As You Think! - YouTube
USB Type-C: Explained! - YouTube
USB-C Tutorial for Everybody (Connector, Cable, PD, Data Transfer, Devices) - YouTube
It's 2018 and USB Type-C is still a mess - Android Authority
Converting devices to USB Type-C - YouTube
USB Audio
What you need to know about USB-C audio - Android Authority
USB Audio and USB Type-C headphones explained
USB OTG
USB On-The-Go - Wikiwand
USB On-the-Go Basics - Tutorial - Maxim
Simple guide for setting up OTG modes on the Raspberry Pi Zero
Cables
Fastest charging cables - which one is best for you?
Google engineer challenges USB-C cables for sale at Amazon - ExtremeTech
Total Nightmare: USB-C and Thunderbolt 3 - Stephen Foskett, Pack Rat
How to tell if your USB-C cable is USB only or supports Thunderbolt 3 | Macworld
USB-C 一统天下❌ 加剧混乱✅ 为什么C口数据线还是不能混用?【柴知道】 - YouTube
Dangers of Counterfeit USB-C and Type-C Cables
Check USB devices
sudo lsusb -t
Mount USB storage
USB storage devices - ArchWiki
udisks - ArchWiki
coldfix/udiskie: Automounter for removable media
How To: Easy USB Mounting On Linux With Udisks2 And Udiskie - YouTube