-
Did a little bit of googling and I'm not claiming this to be definite but I think the one device is opening up two communication channels with the PC over the 1 USB connection. 1 of those comms channels is just having fairly simple generic USB HID messages sent over it and the pc is accepting these and saying "okay there's a mouse there" and on the other comms channels it's sent whatever it needs to to say "this is a generic storage device, you can mount this and use it".
If you run "ls /dev" without it plugged in, then again with it plugged in, how many more devices does it show? Out of interest
I put circuit python on a RPi Pico, and then using the HID library I got it to pretend to be a mouse when plugged into a computer.
But when it's plugged into a computer, it also appears as a mass storage device (that's how you update the python code).
So how is it appearing at two devices? I assumed it was setting up a virtual USB hub and "attaching" two devices to it, but that doesn't seem the be the case. When I run
lsusb
I only see one device. I'm so confused