Now that you mention multiple endpoints, I noticed (admittedly, this is in USB1/2, which seems to be a totally separate system from USB3) my KB shows up as multiple HIDs. Probably for RGB and nkey rollover. But I wonder how it is implemented? Is there an internal hub (adding one more layer of hubs, ontop of whatever is done internally in my PC before the physical USB port - a lot, if lsusb/lspci-tree-list is to go by)?