7 ms·
>Nothing's wrong there and you're just playing with semantics to not admit your misunderstanding. All hubs have an in-band control interface available that can
by gsich 3y ago
>Nothing's wrong there and you're just playing with semantics to not admit your misunderstanding. All hubs have an in-band control interface available that can be used by them to implement port power control, period.
You want to make it about semantics because you think that "control" means something different then what it means.
There are hubs that can't be controlled that way. Period.
./uhubctl
No compatible devices detected!
Run with -h to get usage info.
Feel free to tell me how I can get those uncontrollable hubs compatible.
- seba_dos1 3y agoThis is completely irrelevant to what this subthread is about and you would know that if you had read it again instead of trying to insist that you're right.
- gsich 3y agoNo it's not. To go back to your original statement: >USB hubs are controllable via USB, so I guess this is for cases where your hub is connected to a device you don't control. This is not a generally true. I gave an example of an uncontrollable hub you deemed irrelevant. What is control if it's not controlling the USB hub? It's not "the kernel does something which requires no user input".
- seba_dos1 3y agoWhat you're writing is still completely irrelevant. Every USB hub has a control channel over USB and it's true regardless of how you may want to redefine the word "control". My post attempted to answer a question that popped into my mind when looking at this submission: "why would I want a USB hub that implements power control via I2C instead of USB?" (another answer could be "because it's easier to retrofit such functionality on top of a hub chip that doesn't do power control", although that one is only relevant for the designer and not for the user of such device).
- gsich 3y agoIf that control channel can't be used to control the hub, it's not controllable.
- seba_dos1 3y agoYeah, sure mate.
- gsich 3y agoYes. Thanks for finally understanding it.
- seba_dos1 3y agoHave a sticker. Meanwhile, I just sent a command to a USB hub in my mobile phone in order to suspend a modem connected to it - something every USB hub is capable of doing and what can be controlled by the user (yes, it's a function of the hub, not of the device). But you do you, enjoy your world.
- gsich 3y agoThis suspend is still not guaranteed to be supported by the every modem. So no real "control" unless you cut Vcc too.
- seba_dos1 3y agoThe modem (or any other device) has nothing to say when being suspended by the hub - it can't even tell whether it's being suspended selectively or whether it's the whole bus (or any upstream hub) that got suspended. You can suspend every USB device, you have full control over that. With some devices it won't give you any power savings, some won't resume correctly, some will instantly reset and some won't be able to ask the host to be resumed (initiate remote wakeup), but you can send any device to suspend by asking the hub to do so (and telling it to enable or disable remote wakeup capability as desired beforehand) and it will work. You can also ask the hub to disable the port's data connection (PORT_ENABLE) independently of controlling its power (PORT_POWER), and as opposed to power control it's actually mandated by the spec since USB 1.0 and supported universally. uhubctl doesn't concern itself with all those features, but technically there's nothing preventing it from implementing them alongside power control. I have spent more time reading USB specs and debugging USB connection troubles than I wish I had to.