Is it possible to determine the chipset of a USB device?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
0
down vote

favorite












If I run lsusb I see my USB WiFi device.



Bus 001 Device 006: ID 7392:a812 Edimax Technology Co., Ltd

Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.10
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x7392 Edimax Technology Co., Ltd
idProduct 0xa812
bcdDevice 2.00
iManufacturer 1 Realtek
iProduct 2 Edimax AC600 USB
iSerial 3 00e04c000001
bNumConfigurations 1
...


If I run lshw I see the driver used by that device is rtl8812au



*-network:1
description: Wireless interface
physical id: 3
bus info: usb@1:12
logical name: enp0s20u12
serial: 74:da:38:b9:77:3c
capabilities: ethernet physical wireless
configuration: broadcast=yes driver=rtl8812au ip=192.168.0.105 multicast=yes wireless=IEEE 802.11AC


Using journalctl in Arch I see the driver registered is rtl8812au.



Sep 30 12:22:20 archlinux kernel: usbcore: registered new interface driver rtl8812au


My understanding is that self-identified fields from a device like vendor id and product id inform the system what sort of driver should be loaded for a device.



But how do I know the chipset? A driver may cover multiple chipsets, right?



So my device could very well be using one of a wide range of chipsets covered by that particular driver.



The sample output I posted makes me think my device is probably an rtl8812au chipset considering the driver for it is named so specifically.



But the rt2800usb driver really intrigues me. It covers such a wide range of chipsets. If my system showed that the rt2800usb driver was being loaded, I feel like it wouldn't be nearly as clear what the chipset was.



Is there any way to really know the particular chipset of my device without somehow opening up the device and examining the chip?










share|improve this question



















  • 1




    There is no way, unless the driver covering multiple chipsets can perform identification of the chipset (which depends on the chipsets, often you can read a register for chipset and/or version). Some drivers can, and some even tell you in dmesg.
    – dirkt
    Oct 2 '17 at 5:25






  • 1




    For some reason, I thought my question was unique, but I see my question really is a duplicate to stackoverflow.com/questions/757295/… and that the answer by @dirkt is correct. It seems that there is no reliable or consistent way to determine the chipset of a USB device
    – Will Haley
    Oct 2 '17 at 18:03















up vote
0
down vote

favorite












If I run lsusb I see my USB WiFi device.



Bus 001 Device 006: ID 7392:a812 Edimax Technology Co., Ltd

Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.10
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x7392 Edimax Technology Co., Ltd
idProduct 0xa812
bcdDevice 2.00
iManufacturer 1 Realtek
iProduct 2 Edimax AC600 USB
iSerial 3 00e04c000001
bNumConfigurations 1
...


If I run lshw I see the driver used by that device is rtl8812au



*-network:1
description: Wireless interface
physical id: 3
bus info: usb@1:12
logical name: enp0s20u12
serial: 74:da:38:b9:77:3c
capabilities: ethernet physical wireless
configuration: broadcast=yes driver=rtl8812au ip=192.168.0.105 multicast=yes wireless=IEEE 802.11AC


Using journalctl in Arch I see the driver registered is rtl8812au.



Sep 30 12:22:20 archlinux kernel: usbcore: registered new interface driver rtl8812au


My understanding is that self-identified fields from a device like vendor id and product id inform the system what sort of driver should be loaded for a device.



But how do I know the chipset? A driver may cover multiple chipsets, right?



So my device could very well be using one of a wide range of chipsets covered by that particular driver.



The sample output I posted makes me think my device is probably an rtl8812au chipset considering the driver for it is named so specifically.



But the rt2800usb driver really intrigues me. It covers such a wide range of chipsets. If my system showed that the rt2800usb driver was being loaded, I feel like it wouldn't be nearly as clear what the chipset was.



Is there any way to really know the particular chipset of my device without somehow opening up the device and examining the chip?










share|improve this question



















  • 1




    There is no way, unless the driver covering multiple chipsets can perform identification of the chipset (which depends on the chipsets, often you can read a register for chipset and/or version). Some drivers can, and some even tell you in dmesg.
    – dirkt
    Oct 2 '17 at 5:25






  • 1




    For some reason, I thought my question was unique, but I see my question really is a duplicate to stackoverflow.com/questions/757295/… and that the answer by @dirkt is correct. It seems that there is no reliable or consistent way to determine the chipset of a USB device
    – Will Haley
    Oct 2 '17 at 18:03













up vote
0
down vote

favorite









up vote
0
down vote

favorite











If I run lsusb I see my USB WiFi device.



Bus 001 Device 006: ID 7392:a812 Edimax Technology Co., Ltd

Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.10
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x7392 Edimax Technology Co., Ltd
idProduct 0xa812
bcdDevice 2.00
iManufacturer 1 Realtek
iProduct 2 Edimax AC600 USB
iSerial 3 00e04c000001
bNumConfigurations 1
...


If I run lshw I see the driver used by that device is rtl8812au



*-network:1
description: Wireless interface
physical id: 3
bus info: usb@1:12
logical name: enp0s20u12
serial: 74:da:38:b9:77:3c
capabilities: ethernet physical wireless
configuration: broadcast=yes driver=rtl8812au ip=192.168.0.105 multicast=yes wireless=IEEE 802.11AC


Using journalctl in Arch I see the driver registered is rtl8812au.



Sep 30 12:22:20 archlinux kernel: usbcore: registered new interface driver rtl8812au


My understanding is that self-identified fields from a device like vendor id and product id inform the system what sort of driver should be loaded for a device.



But how do I know the chipset? A driver may cover multiple chipsets, right?



So my device could very well be using one of a wide range of chipsets covered by that particular driver.



The sample output I posted makes me think my device is probably an rtl8812au chipset considering the driver for it is named so specifically.



But the rt2800usb driver really intrigues me. It covers such a wide range of chipsets. If my system showed that the rt2800usb driver was being loaded, I feel like it wouldn't be nearly as clear what the chipset was.



Is there any way to really know the particular chipset of my device without somehow opening up the device and examining the chip?










share|improve this question















If I run lsusb I see my USB WiFi device.



Bus 001 Device 006: ID 7392:a812 Edimax Technology Co., Ltd

Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.10
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x7392 Edimax Technology Co., Ltd
idProduct 0xa812
bcdDevice 2.00
iManufacturer 1 Realtek
iProduct 2 Edimax AC600 USB
iSerial 3 00e04c000001
bNumConfigurations 1
...


If I run lshw I see the driver used by that device is rtl8812au



*-network:1
description: Wireless interface
physical id: 3
bus info: usb@1:12
logical name: enp0s20u12
serial: 74:da:38:b9:77:3c
capabilities: ethernet physical wireless
configuration: broadcast=yes driver=rtl8812au ip=192.168.0.105 multicast=yes wireless=IEEE 802.11AC


Using journalctl in Arch I see the driver registered is rtl8812au.



Sep 30 12:22:20 archlinux kernel: usbcore: registered new interface driver rtl8812au


My understanding is that self-identified fields from a device like vendor id and product id inform the system what sort of driver should be loaded for a device.



But how do I know the chipset? A driver may cover multiple chipsets, right?



So my device could very well be using one of a wide range of chipsets covered by that particular driver.



The sample output I posted makes me think my device is probably an rtl8812au chipset considering the driver for it is named so specifically.



But the rt2800usb driver really intrigues me. It covers such a wide range of chipsets. If my system showed that the rt2800usb driver was being loaded, I feel like it wouldn't be nearly as clear what the chipset was.



Is there any way to really know the particular chipset of my device without somehow opening up the device and examining the chip?







drivers






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Oct 2 '17 at 16:48

























asked Oct 1 '17 at 19:46









Will Haley

1455




1455







  • 1




    There is no way, unless the driver covering multiple chipsets can perform identification of the chipset (which depends on the chipsets, often you can read a register for chipset and/or version). Some drivers can, and some even tell you in dmesg.
    – dirkt
    Oct 2 '17 at 5:25






  • 1




    For some reason, I thought my question was unique, but I see my question really is a duplicate to stackoverflow.com/questions/757295/… and that the answer by @dirkt is correct. It seems that there is no reliable or consistent way to determine the chipset of a USB device
    – Will Haley
    Oct 2 '17 at 18:03













  • 1




    There is no way, unless the driver covering multiple chipsets can perform identification of the chipset (which depends on the chipsets, often you can read a register for chipset and/or version). Some drivers can, and some even tell you in dmesg.
    – dirkt
    Oct 2 '17 at 5:25






  • 1




    For some reason, I thought my question was unique, but I see my question really is a duplicate to stackoverflow.com/questions/757295/… and that the answer by @dirkt is correct. It seems that there is no reliable or consistent way to determine the chipset of a USB device
    – Will Haley
    Oct 2 '17 at 18:03








1




1




There is no way, unless the driver covering multiple chipsets can perform identification of the chipset (which depends on the chipsets, often you can read a register for chipset and/or version). Some drivers can, and some even tell you in dmesg.
– dirkt
Oct 2 '17 at 5:25




There is no way, unless the driver covering multiple chipsets can perform identification of the chipset (which depends on the chipsets, often you can read a register for chipset and/or version). Some drivers can, and some even tell you in dmesg.
– dirkt
Oct 2 '17 at 5:25




1




1




For some reason, I thought my question was unique, but I see my question really is a duplicate to stackoverflow.com/questions/757295/… and that the answer by @dirkt is correct. It seems that there is no reliable or consistent way to determine the chipset of a USB device
– Will Haley
Oct 2 '17 at 18:03





For some reason, I thought my question was unique, but I see my question really is a duplicate to stackoverflow.com/questions/757295/… and that the answer by @dirkt is correct. It seems that there is no reliable or consistent way to determine the chipset of a USB device
– Will Haley
Oct 2 '17 at 18:03
















active

oldest

votes











Your Answer







StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
convertImagesToLinks: false,
noModals: false,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













 

draft saved


draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f395516%2fis-it-possible-to-determine-the-chipset-of-a-usb-device%23new-answer', 'question_page');

);

Post as a guest



































active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes















 

draft saved


draft discarded















































 


draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f395516%2fis-it-possible-to-determine-the-chipset-of-a-usb-device%23new-answer', 'question_page');

);

Post as a guest













































































Popular posts from this blog

How to check contact read email or not when send email to Individual?

Displaying single band from multi-band raster using QGIS

How many registers does an x86_64 CPU actually have?