Я взял барабан wii, который собирался выбросить. У этого есть USB-порт, и я хочу подключить его к моей macbook для проекта. Моя цель состоит в основном в том, чтобы иметь возможность обнаруживать, когда определенный барабан был задействован на устройстве. Исходя из того, что я собрал до сих пор, мне нужно сделать следующие шаги:Как читать данные с периферийного устройства usb?
- Подключите устройство и определить, какие TTY порт он находится на
- использовать команду «экран», чтобы распечатать данные, происходит от барабанов
- выходных данных команды экрана в некоторый код, который генерирует полезный выход для моего проекта
Я думаю, что я понимаю, как это сделать 2 и 3, но получаю вешал на шаге 1.
Если я запускаю «ioreg -Src IOUSBDevice» в терминале, я могу определить, что устройство подключено, но я не знаю, какой порт tty он включен. (см. ниже для вывода)
Кроме того, в общем случае, возможно ли распечатать данные в виде потока байтов с любого периферийного устройства USB, подключенного к порту USB?
EDIT: Я должен добавить, что если я запустил «ls /dev/tty.*», я не вижу никаких элементов tty.usb, но только tty.bluetooth.
+-o Harmonix Drum Controller for Nintendo [email protected] <class IOUSBDevice, id $
| {
| "sessionID" = 2111009401078
| "iManufacturer" = 1
| "bNumConfigurations" = 1
| "idProduct" = 5
| "bcdDevice" = 4096
| "Bus Power Available" = 250
| "bMaxPacketSize0" = 64
| "USB Product Name" = "Harmonix Drum Controller for Nintendo Wii"
| "iProduct" = 2
| "iSerialNumber" = 0
| "USB Address" = 4
| "bDeviceClass" = 0
| "locationID" = 337641472
| "bDeviceSubClass" = 0
| "IOUserClientClass" = "IOUSBDeviceUserClientV2"
| "PortNum" = 2
| "IOCFPlugInTypes" = {"9dc7b780-9ec0-11d4-a54f-000a27052861"="IOUSBFamily.$
| "bDeviceProtocol" = 0
| "USB Vendor Name" = "Licensed by Nintendo of America "
| "Device Speed" = 1
| "idVendor" = 7085
| "Requested Power" = 50
| "IOGeneralInterest" = "IOCommand is not serializable"
| "Low Power Displayed" = No
| }
|
+-o IOUSBCompositeDriver <class IOUSBCompositeDriver, id 0x100000ebe, !regis$
+-o [email protected] <class IOUSBInterface, id 0x100000ebf, registered, matc$
+-o IOUSBHIDDriver <class IOUSBHIDDriver, id 0x100000ec2, registered, matc$
+-o IOHIDInterface <class IOHIDInterface, id 0x100000ec4, registered, ma$
+-o IOHIDLibUserClient <class IOHIDLibUserClient, id 0x100000ec5, !regis$
+-o IOHIDLibUserClient <class IOHIDLibUserClient, id 0x100000ec7, !regis$
До сих пор