Se ho più Arduinos collegati tramite USB a un computer Linux e vengono visualizzati come
- / Tty / ACM0
- / Tty / ACM1
- / Tty / ACM2
Come posso identificare quale Arduino è quale senza connettersi ad essi tramite connessione seriale ? Esiste un numero seriale o un ID univoco su Arduino?
Grazie per il tuo tempo.
Situazione: Uno R3, Mega, Leonardo con / ttyACM [1,2,3]
Uscita USB con dispositivi nell'ordine sopra menzionato:
... Bus 001 Dispositivo 011: ID 2341: 0043 Bus 001 Dispositivo 013: ID 2341: 8036 ... Bus 001 Dispositivo 014: ID 2341: 0042
lsusb -d vendor: device -vvv mostra per ognuno
Uno
Bus 001 Dispositivo 014: ID 2341: 0042
Descrittore dispositivo:
bLunghezza 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 2 Communications
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x2341
idProduct 0x0042
bcdDevice 0.01
iManufacturer 1 Arduino (www.arduino.cc)
iProduct 2
iSerial 220 55330313735351910141
bNumConfigurations 1
Descrittore di configurazione:
bLunghezza 9
bDescriptorType 2
wTotalLength 62
bNumInterfaces 2
bConfigurationValue 1
iConfigurazione 0
bmAttributes 0xc0
Autoalimentato
MaxPower 100mA
Descrittore di interfaccia:
bLunghezza 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 2 Communications
bInterfaceSubClass 2 Abstract (modem)
bInterfaceProtocol 1 AT-comandi (v.25ter)
Interfaccia 0
Intestazione CDC:
bcdCDC 10.01
CDC ACM:
bmCapabilities 0x06
invia una pausa
codifica di linea e stato seriale
Unione CDC:
bMasterInterface 0
bInterfaccia slave 1
Descrittore endpoint:
bLunghezza 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Tipo di trasferimento interrotto
Tipo di sincronizzazione Nessuno
Dati sul tipo di utilizzo
wMaxPacketSize 0x0008 1x 8 byte
bIntervallo 255
Descrittore di interfaccia:
bLunghezza 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 10 Dati CDC
bInterfaceSubClass 0 Non utilizzato
bInterfaceProtocol 0
Interfaccia 0
Descrittore endpoint:
bLunghezza 7
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Tipo di trasferimento alla rinfusa
Tipo di sincronizzazione Nessuno
Dati sul tipo di utilizzo
wMaxPacketSize 0x0040 1x 64 byte
bIntervallo 1
Descrittore endpoint:
bLunghezza 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Tipo di trasferimento alla rinfusa
Tipo di sincronizzazione Nessuno
Dati sul tipo di utilizzo
wMaxPacketSize 0x0040 1x 64 byte
bIntervallo 1
Stato del dispositivo: 0x0000
(Bus alimentato)
Leonardo:
Bus 001 Dispositivo 013: ID 2341: 8036
Descrittore dispositivo:
bLunghezza 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (definito a livello di interfaccia)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x2341
idProduct 0x8036
bcdDevice 1.00
iManufacturer 1 Arduino LLC
iProduct 2 Arduino Leonardo
iSerial 0
bNumConfigurations 1
Descrittore di configurazione:
bLunghezza 9
bDescriptorType 2
wTotalLength 100
bNumInterfaces 3
bConfigurationValue 1
iConfigurazione 0
bmAttributes 0x80
(Bus alimentato)
MaxPower 500mA
Associazione interfaccia:
bLunghezza 8
bDescriptorType 11
bFirstInterface 0
bInterfaceCount 2
bFunctionClass 2 Communications
bFunctionSubClass 2 Abstract (modem)
bFunctionProtocol 1 AT-comandi (v.25ter)
iFunction 0
Descrittore di interfaccia:
bLunghezza 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 2 Communications
bInterfaceSubClass 2 Abstract (modem)
bInterfaceProtocol 0 Nessuno
Interfaccia 0
Intestazione CDC:
bcdCDC 1.10
Gestione delle chiamate CDC:
bmCapabilities 0x01
gestione delle chiamate
bDataInterface 1
CDC ACM:
bmCapabilities 0x06
invia una pausa
codifica di linea e stato seriale
Unione CDC:
bMasterInterface 0
bInterfaccia slave 1
Descrittore endpoint:
bLunghezza 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Tipo di trasferimento interrotto
Tipo di sincronizzazione Nessuno
Dati sul tipo di utilizzo
wMaxPacketSize 0x0040 1x 64 byte
bInterval 0
Descrittore endpoint:
bLunghezza 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Tipo di trasferimento alla rinfusa
Tipo di sincronizzazione Nessuno
Dati sul tipo di utilizzo
wMaxPacketSize 0x0040 1x 64 byte
bInterval 0
Descrittore di interfaccia:
bLunghezza 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 Nessuna sottoclasse
bInterfaceProtocol 0 Nessuno
Interfaccia 0
Descrittore dispositivo HID:
bLunghezza 9
bDescriptorType 33
bcdHID 1.01
bCountryCode 0 Non supportato
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 101
Descrittore rapporto: (la lunghezza è 101)
Articolo (globale): pagina di utilizzo, dati = [0x01] 1
Controlli desktop generici
Articolo (locale): Utilizzo, dati = [0x02] 2
Topo
Item (Main): Collection, data = [0x01] 1
Applicazione
Elemento (locale): Utilizzo, dati = [0x01] 1
pointer
Item (Main): Collection, data = [0x00] 0
Fisico
Elemento (globale): ID rapporto, dati = [0x01] 1
Articolo (globale): pagina di utilizzo, dati = [0x09] 9
pulsanti
Articolo (locale): minimo di utilizzo, dati = [0x01] 1
Pulsante 1 (primario)
Articolo (locale): massimo utilizzo, dati = [0x03] 3
Pulsante 3 (terziario)
Elemento (globale): minimo logico, dati = [0x00] 0
Elemento (globale): massimo logico, dati = [0x01] 1
Elemento (globale): conteggio rapporti, dati = [0x03] 3
Elemento (globale): dimensioni report, dati = [0x01] 1
Voce (principale): input, data = [0x02] 2
Variabile di dati assoluto No_Wrap lineare
Preferred_State No_Null_Position Bit bit non volatile
Elemento (globale): conteggio rapporti, dati = [0x01] 1
Elemento (globale): dimensioni report, dati = [0x05] 5
Voce (principale): input, data = [0x03] 3
Assoluto variabile costante No_Wrap lineare
Preferred_State No_Null_Position Bit bit non volatile
Articolo (globale): pagina di utilizzo, dati = [0x01] 1
Controlli desktop generici
Articolo (locale): Utilizzo, dati = [0x30] 48
Direzione-X
Articolo (locale): Utilizzo, dati = [0x31] 49
Direzione-Y
Articolo (locale): Utilizzo, dati = [0x38] 56
Ruota
Elemento (globale): minimo logico, dati = [0x81] 129
Elemento (globale): massimo logico, dati = [0x7f] 127
Elemento (globale): dimensioni report, dati = [0x08] 8
Elemento (globale): conteggio rapporti, dati = [0x03] 3
Voce (principale): input, data = [0x06] 6
Variabile dati relativa No_Wrap lineare
Preferred_State No_Null_Position Bit bit non volatile
Item (Main): End Collection, data = none
Item (Main): End Collection, data = none
......
Descrittore endpoint:
bLunghezza 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 3
Tipo di trasferimento interrotto
Tipo di sincronizzazione Nessuno
Dati sul tipo di utilizzo
wMaxPacketSize 0x0040 1x 64 byte
bIntervallo 1
Stato del dispositivo: 0x0000
(Bus alimentato)
E Mega256:
Bus 001 Dispositivo 014: ID 2341: 0042
Descrittore dispositivo:
bLunghezza 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 2 Communications
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x2341
idProduct 0x0042
bcdDevice 0.01
iManufacturer 1 Arduino (www.arduino.cc)
iProduct 2
iSerial 220 55330313735351910141
bNumConfigurations 1
Descrittore di configurazione:
bLunghezza 9
bDescriptorType 2
wTotalLength 62
bNumInterfaces 2
bConfigurationValue 1
iConfigurazione 0
bmAttributes 0xc0
Autoalimentato
MaxPower 100mA
Descrittore di interfaccia:
bLunghezza 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 2 Communications
bInterfaceSubClass 2 Abstract (modem)
bInterfaceProtocol 1 AT-comandi (v.25ter)
Interfaccia 0
Intestazione CDC:
bcdCDC 10.01
CDC ACM:
bmCapabilities 0x06
invia una pausa
codifica di linea e stato seriale
Unione CDC:
bMasterInterface 0
bInterfaccia slave 1
Descrittore endpoint:
bLunghezza 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Tipo di trasferimento interrotto
Tipo di sincronizzazione Nessuno
Dati sul tipo di utilizzo
wMaxPacketSize 0x0008 1x 8 byte
bIntervallo 255
Descrittore di interfaccia:
bLunghezza 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 10 Dati CDC
bInterfaceSubClass 0 Non utilizzato
bInterfaceProtocol 0
Interfaccia 0
Descrittore endpoint:
bLunghezza 7
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Tipo di trasferimento alla rinfusa
Tipo di sincronizzazione Nessuno
Dati sul tipo di utilizzo
wMaxPacketSize 0x0040 1x 64 byte
bIntervallo 1
Descrittore endpoint:
bLunghezza 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Tipo di trasferimento alla rinfusa
Tipo di sincronizzazione Nessuno
Dati sul tipo di utilizzo
wMaxPacketSize 0x0040 1x 64 byte
bIntervallo 1
Stato del dispositivo: 0x0000
(Bus alimentato)

lsusb -vvvdice?